javascript - jquery老項目怎么用新技術重構?
問題描述
想用vue重構老項目,jq寫的,該如何著手?
問題解答
回答1:jquery只是一個庫,而vue是一個框架,決定了用vue重構,就意味著你必須要使用它的寫法來書寫項目。
雖然vue和jquery本身并不排斥,我也在vue中使用過jquery,但是也僅限于一些比較特殊的場景。整個項目仍然是以vue為核心的。
所以,你想要用vue重構老項目,html部分變化可能不大,但是業務代碼邏輯基本就需要完全推倒重新設計了。
回答2:vue 只支持 IE9 以上的瀏覽器,jQuery 可以支持 IE6,注意是否有瀏覽器版本的需求
回答3:如果實現過類似的簡單框架,你就會發現,Vue 和 jQuery 本質的區別在于對 UI 邏輯的不同組織方式。
jQuery 純粹是原始 DOM API 的語法糖大合集,而 Vue 則是一個強調通過 MVVM(而不是 MVC!)的組織形式來分離【HTML 模板】和【UI 交互】邏輯的框架。MVVM 的數據綁定語法使得在老項目中引入 Vue 時,其(實際上先進了非常多的)代碼組織形式會非常強勢地排斥 jQuery(換句話說,用到 Vue 的項目基本沒有使用 jQuery 的必要,二者并存不是好的選擇)。
這時,一個既有利于提高效率又不會過于激進的方案是,引入【能夠優化 jQuery 面條代碼組織結構的簡單 MVC 框架】,這種框架沒有 VM 這種框架自帶的語法,相應邏輯仍然需要使用 jQuery 實現。同時,這類框架也比 Vue 還要輕得多,如 Backbone 只有 10k 的量級。建議作為老項目中的優化方案漸進引入。
回答4:局部重構,局部模塊或者局部插件重構,保證項目的正常運行下,局部將jQuery替換vue
相關文章:
1. angular.js - webpack build后的angularjs路由跳轉問題2. java - web項目中,用戶登陸信息存儲在session中好 還是cookie中好,取決于什么?3. 數組按鍵值封裝!4. mysql - 根據一個字段查找另一個字段重復的數據?并刪除相同的記錄,保留其中一個。5. mysql - 查詢字段做了索引為什么不起效,還有查詢一個月的時候數據都是全部出來的,如果分拆3次的話就沒問題,為什么呢。6. 這個是什么問題?7. mysql - navicat 經常打開表一直在載入中 也不能關閉 著急解決8. 單擊登錄按鈕無反應9. mysql 新增用戶 主機名設定 失敗10. mysql儲存json錯誤
