javascript - jquery老項目怎么用新技術(shù)重構(gòu)?
問題描述
想用vue重構(gòu)老項目,jq寫的,該如何著手?
問題解答
回答1:jquery只是一個庫,而vue是一個框架,決定了用vue重構(gòu),就意味著你必須要使用它的寫法來書寫項目。
雖然vue和jquery本身并不排斥,我也在vue中使用過jquery,但是也僅限于一些比較特殊的場景。整個項目仍然是以vue為核心的。
所以,你想要用vue重構(gòu)老項目,html部分變化可能不大,但是業(yè)務(wù)代碼邏輯基本就需要完全推倒重新設(shè)計了。
回答2:vue 只支持 IE9 以上的瀏覽器,jQuery 可以支持 IE6,注意是否有瀏覽器版本的需求
回答3:如果實現(xiàn)過類似的簡單框架,你就會發(fā)現(xiàn),Vue 和 jQuery 本質(zhì)的區(qū)別在于對 UI 邏輯的不同組織方式。
jQuery 純粹是原始 DOM API 的語法糖大合集,而 Vue 則是一個強調(diào)通過 MVVM(而不是 MVC!)的組織形式來分離【HTML 模板】和【UI 交互】邏輯的框架。MVVM 的數(shù)據(jù)綁定語法使得在老項目中引入 Vue 時,其(實際上先進了非常多的)代碼組織形式會非常強勢地排斥 jQuery(換句話說,用到 Vue 的項目基本沒有使用 jQuery 的必要,二者并存不是好的選擇)。
這時,一個既有利于提高效率又不會過于激進的方案是,引入【能夠優(yōu)化 jQuery 面條代碼組織結(jié)構(gòu)的簡單 MVC 框架】,這種框架沒有 VM 這種框架自帶的語法,相應(yīng)邏輯仍然需要使用 jQuery 實現(xiàn)。同時,這類框架也比 Vue 還要輕得多,如 Backbone 只有 10k 的量級。建議作為老項目中的優(yōu)化方案漸進引入。
回答4:局部重構(gòu),局部模塊或者局部插件重構(gòu),保證項目的正常運行下,局部將jQuery替換vue
相關(guān)文章:
1. docker 17.03 怎么配置 registry mirror ?2. 前端 - @media query 使用出現(xiàn)的問題?3. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個是怎么回事????4. node.js - mongodb查找子對象的名稱為某個值的對象的方法5. 運行python程序時出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯誤?6. html5 - datatables 加載不出來數(shù)據(jù)。7. 測試自動化html元素選擇器元素ID或DataAttribute [關(guān)閉]8. javascript - QQ第三方登錄的問題9. 利用IPMI遠(yuǎn)程安裝centos報錯!10. spring-mvc - spring-session-redis HttpSessionListener失效

網(wǎng)公網(wǎng)安備