原创 ivew 的 InputNumber 框控制只能輸入

通過 formatter 格式化數字,以展示具有具體含義的數據,往往需要配合 parser 一起使用。 <InputNumber :step="1" :formatte

原创 ivue 的報錯 TypeError: ctx.injections.tableRoot.$scopedSlots[ctx.props.column.slot] is not a function

  使用  iview的  <Table>  組件,報了個錯    原因是 我給Table組件的columns中定義了4個含有slot的列,但是實際在<Table>中只使用了其中3個,導致的報錯。 也就是,在 Table組件的colum

原创 根據id 將平級數據轉換成樹形結構數據

從數據庫查詢的每一條數據都包含id 和pid 字段,將獲得的數據轉換成樹形結構 id 與 pid 的關係 ===> pid 等於0 的是最外層數據, pid 等於最外層 數據的id,將這條數據放在第二層, 不確定有多少層,理論上可以有無數

原创 vue 超過兩行省略號表示,出現‘全部’按鈕,點擊全部,將評論全部展示出來。

  使用說明超出一行出現向下的 iconfont ,超出的文字用省略號代替, 點擊iconfont 後,箭頭向上,使用說明全部展示不出現省略號。效果如下 <div class="tips item_b">

原创 iview + vue 表格給單個單元格特定樣式 如必填的 紅色(*)

data() { return { columns2: [ { title: '編號', align: 'center',

原创 forEach 循環強制跳出

可以試下用 try catch 來拋出異常來跳出循環; try {}.catch(e){} 場景,一個表格提交,有些數據是必填 try { this.addDate.forEach((item, index) => {

原创 Object.defineProperty ,一個神奇的函數

vue.js是通過這 Object.defineProperty來實現雙向數據綁定的,神奇的方法 爲JavaScript對象新增或者修改屬性,有兩種不同方式:直接使用=賦值或者使用Object.defineProperty()定義。如下

原创 null 是對象嘛? 爲什麼不是對象? 基礎數據類型有哪些?基礎數據類型和複雜數據類型的區別有哪些?

基本類型有6種,分別是 undefined, null, bool, string, number,  symbol(ES6新增) 雖然 typeof null 返回的值是 object,但是null不是對象,而是基本數據類型的一種。 基

原创 vue 基於 iview 的 table 表格的拖拽換順序實現。

需求: iview 的表單實現拖拽換位置。然後自動將整個數組傳給後臺。 iview 文檔說明;   <Table :columns="dataCardcolumns" :da

原创 前端實現文件的斷點續傳 大文件上傳

整體思路:    前端 前端大文件上傳網上的大部分文章已經給出瞭解決方案,核心是利用 Blob.prototype.slice 方法,和數組的 slice 方法相似,調用的 slice 方法可以返回 原文件的某個切片 這樣我們就可以根據預

原创 vue 項目中使用loadsh 的 防抖(debounce)和節流(throttle)

使用場景: 首次調用執行一次,一定時間內再次調用,不再執行。 實現方式:    1. debounce (函數去抖) 多次觸發,只在最後一次觸發時,執行目標函數。 _.debounce(func, [wait=0], [options=

原创 通過子級Id向上找到所有的父級id

 運用場景: 一個樹形數據結構,後臺返回最後一層的子集的id , 因爲是聯級選擇器,我需要拿到所有的由所有父級id 組成的數組。 嵌套的級數是不確定的。   const data = [ {