原创 promise順序執行異步函數

1. 順序輸出func1 func2 func3 function func1(cb){ setTimeout(function(){ console.log('func1') cb() },3000) } fu

原创 javascript學習筆記--更新

1. 普通函數和閉包函數的區別,閉包攜帶了執行的環境 2. 宏任務和微任務的區別     宏任務 由宿主環境API創建的任務 例如: setTimeout     微任務 由執行環境創建的任務 例如: promise 3. 12.toSt

原创 typescript class修飾符public、private、protected、static、abstract

class修飾符的使用及區別 public、private、protected、static、abstract public:可以繼承、實例化 // public可以繼承、實例化 class Person { public name:

原创 vue & 類class實現3D相冊

效果圖 相冊組件 <template> <div class="imgBox"> <div class="imgList" v-for="item in list" :key="item"> <img :src="requ

原创 vue非父子/非兄弟組件通信bus發佈/訂閱者模式

使用背景如下圖 二級菜單爲一級菜單的子路由,二級菜單加載M組件 業務邏輯: 一級菜單中有一個功能按鈕,點擊按鈕可以改變狀態state,組件M根據按鈕狀態state加載數據 實現思路,使用事件總線,發佈/訂閱者模式 1.  創建一個公共的

原创 vue-ls 本地存儲

一種可以設置有效期的本地存儲方式  安裝 npm install vue-ls --save 使用 import Storage from 'vue-ls'; let options = { namespace: 'vuejs_

原创 H5使用flex+百分比實現自適應

目錄適配要求效果圖代碼實現 適配要求 在項目中使用flex和百分比實現不同機型之間的適配,屏幕變大圖標尺寸變大並且設置最大值,屏幕尺寸變小圖標尺寸變小 效果圖 代碼實現 html結構 <div class="out"> <d

原创 使用 generator 給普通對象添加 iterator 接口

給普通對象添加iterator接口,使其能夠被for…of循環 原生具備 iterator 接口的數據結構如下 Array Map Set String 函數的 arguments 對象 NodeList 對象 TypedArr

原创 cnpm與npm安裝依賴包的區別

npm 與 cnpm 安裝依賴包的區別 npm 首次安裝會生成一個package-lock.json文件 這個json文件用來鎖定安裝包的版本及所需的依賴和版本 再次安裝依賴的時候,會安裝被鎖定的版本 cnpm安裝不會生成pac

原创 數據量太大,接口請求報錯:net::ERR_INCOMPLETE_CHUNKED_ENCODING 200

報錯原因是,接口返回數據量大,連接中斷 臨時解決方法,設置Nginx buffers大小 http{ ................................ proxy_buffer_size 128k; proxy_bu

原创 vue實現文件下載的兩種方式

項目背景 下載文件到本地 <button @click="downLoad">導出</button>  代碼實現 1. 調用接口,將後端返回的流數據new一個文件對象     使用限制:文件過大瀏覽器會連接中斷,導致文件損壞,大約200

原创 pointer-events css控制點擊穿透事件

如果有這樣的場景,點擊頁面上飄動的雪花,觸發雪花下面的元素的事件,下面的CSS特性有驚喜 官方文檔是這麼介紹的 pointer-events CSS 屬性指定在什麼情況下 (如果有) 某個特定的圖形元素可以成爲鼠標事件的 target。

原创 報錯Failed to execute 'getComputedStyle' on 'Window': parameter 1 is not of type 'Element'.

使用jquery.datetimepicker.full.min.js報錯 報錯的操作過程: 操作一次時間控件,切換到其他頁面,打開控制檯,拉動控制檯縮放大小,這個時候就會發現一直報錯 報錯原因是,拖動控制檯的時候,獲取不到控件的根元素

原创 jquery之獲取form表單數據的兩種方式,提交方式爲post

form表單提交獲取鍵值對對象的兩種方式 html <form action=""> <input type="text" name="name" value="freely"><br> <input type="tex

原创 element列表跳轉路由時記錄當前頁,返回列表時還在跳轉頁

點擊處理跳轉到詳情頁,要求返回時還在當前頁,其他頁面進入時加載第一頁數據   代碼實現 // 使用sessionStorage記錄當前頁碼 sessionStorage.setItem('exceptPage', this.curre