1. 程式人生 > >前端開發踩坑日誌(持續更新。。。)

前端開發踩坑日誌(持續更新。。。)

1、火狐瀏覽器對event的支援,如果var e = window.event就會出錯,解決辦法:var e = event || window.event;
2、event.target和event.currentTarget的區別
3、使用axios進行跨域請求時要對option請求時,後端要對option請求進行處理,比如返回狀態200
4、寫原生js的Ajax請求時,所有IE版本都不支援responseType為json的寫法,只能在封裝時用JSON.parse再轉下
5、沒事可以玩玩在谷歌瀏覽器上調安卓手機APP頁面
6、vux單向資料流的問題
7、Object.assign()只實現一級屬性的淺合併,沒有實現深拷貝
8、資源上線時先上靜態資源還是先上頁面,解決辦法,不能採用完全覆蓋式的釋出,辦法一:完全增量式釋出;辦法二:變動資源增量式釋出
9、input如果 type 的值是  text, email, search, password, tel, 或 url,那麼maxlength 這個屬性指明瞭使用者最多可以輸入的字元個數(按照Unicode編碼方式計數);對於其他型別的輸入框,該屬性被忽略。type=number時,maxlength 屬性無效
10、vue進行初始化時,進行資料的監聽和事件的繫結,資料的雙向繫結過程是這樣的:首先定義一個數據監聽器Observe,這個方法主要是對資料進行劫持,利用defineProperty重寫set和get方法,然後再生成一個訊息訂閱器,其實就是通過dep建構函式來維護一個數組,這個函式有兩個方法,一個增加訂閱者,另一個notify,作用是呼叫訂閱者的update方法。回到資料方面,每個資料都會有一個訂閱者watcher,而watcher在例項化時會將自己新增到訂閱器裡面,這樣資料在變化時就會觸發set方法,set方法會去呼叫訂閱器裡面的notify方法,從而觸發watcher的update方法,update方法再去呼叫模板解析指令,從而更新檢視。

11、axios的get請求在ie瀏覽器下資料會被快取,所以需要再url後面加個隨機引數,如時間戳

12、iOS 12 JS陣列Bug,詳見下面連結 :https://zhuanlan.zhihu.com/p/44869607utm_source=qq&utm_medium=social&utm_oi=26783965511680