文章列出了今天小程序的幀選擇,并簡單地分析了它們之間的差異。瘡,探索每個人的觀點,如如何選擇,也請問自己。每個幀的詳細技術(shù)功能都有,您可以自己搜索。
原生發(fā)展
什么是本土開發(fā)方法?這個概念實際上很難使用文本來準確定義,因為官方?jīng)]有定義本機開發(fā)方法。這個概念實際上是不言而喻的,我們將根據(jù)小程序官方文檔的描述開發(fā)一個小程序。
定義名詞對數(shù)學有意義,但對于互聯(lián)網(wǎng),定義只是大腦界中的靈感閃爍。雷軍可以重新定義“現(xiàn)場的目標”,羅永浩可以重新定義“操作系統(tǒng)”,互聯(lián)網(wǎng)時代的定義不負責任,每個人都可以重新定義一堆已久的名詞,否則交通?
如果您沒有定義所謂的本機開發(fā),我們只需要了解小程序本機發(fā)展的缺陷以及為什么有許多第三方小程序幀。經(jīng)過兩年多的時間后,applet已經(jīng)解決了很多早期,如:沒有自定義組件,UI控制自由不高,ES6支持不高,開發(fā)工具幾乎相當于廢料,但是當前版本還有一些缺陷:
不能使用預編譯的CSS,例如少于/ sass /觸控筆
ES新的標準支持太低,如Asncy / AWAIT(ES6 / ES7是如此尷尬,NodeJS不如ES的標準支持)
雖然支持承諾,但官方API返回不是承諾,仍然是一個回調(diào)回調(diào)函數(shù)。
沒有國家管理,請參閱Vuex和Redux
沒有雙向數(shù)據(jù)綁定(嚴格說這不是缺陷,主要是由于性能)
沒有過濾器(LINUI使用WXS實現(xiàn)一些主流過濾器,但官方支持顯然更方便)
強制WXSS,WXML和JS代碼為3個不同的文件
這些缺點讓習慣于現(xiàn)代前端開發(fā)方法的開發(fā)商并不那么舒服。那為什么現(xiàn)在這么多第三方發(fā)展框架?除了上述本機小程序外,還有其他原因:
applet不再具體是指微信小程序,仍然仍然是一只支付寶/百度/標題小程序。開發(fā)人員可能對多功能開發(fā)有多次需求,我希望代碼可以在多端運行,這是一個非常直接的
一些開發(fā)人員希望使用Vue并對開發(fā)小程序作出反應在我看來,applet或多端編譯的缺陷不是第三方框架的主要原因。第3條:為了使用,這是真的。我們背后會跟上這個。
MPVUE.
githubstars:16k +
最早的外表是韋皮語,然后是美國組的MPVUE開源。 MPVUE最早有兩點:
想要用Vue開發(fā)一個小程序
我希望現(xiàn)有的大量H5頁面可以轉(zhuǎn)換為小程序代碼。
mpvue是從Vue.js繼承的,這與我們稍后談過的MPX不同。對于簡短來說,MPVue希望開發(fā)人員不需要了解applet,只要了解具有Vue的Applets的Vue。
但我可以自由地說,我認為市場使用的小程序在市場上非常重要,對H5超越的需求非常重要;簡單的分析,小程序轉(zhuǎn)移H5的技術(shù)難度實際上遠低于H5傳輸,穩(wěn)定性也高得多。從實際情況的角度來看,你想把你的H5變成一個小程序嗎?如今,許多新產(chǎn)品首先做一個小程序,然后是H5版本的網(wǎng)頁。
我相信大多數(shù)開發(fā)人員不使用MPVUE,因為我想將H5轉(zhuǎn)變?yōu)橐粋€小程序,但由于第一個點:我想使用Vue。
最后,您可能忽略了applet可以運行H5,有許多成功的情況,因為當前的applet已經(jīng)非常好支持WebView,并且對JS沒有太大限制。您可以將H5嵌入設(shè)備中。我看到了1 h5版的小程序,感覺經(jīng)驗并不差。
拋出欲望的Vue視野,MPVue只吸引了我的國家管理。
芋頭
GitHub Stars:16K +
它應該被認為是去年下半年最受歡迎的小貓的第三方框架,而景東隊生產(chǎn)。或列出芋頭的優(yōu)勢:
多端編譯。理論上,一組代碼可以編譯為微信/ apapay /百度/標題
使用反應生態(tài)發(fā)展批準
三個王國英國傳記現(xiàn)在只有Angularjs缺席。
芋頭的突出顯示主要由多端編譯,但問題正好在此多端編譯。雖然微信小程序和支付寶小程序的組成部分在語法水平中不大,但是不可能同時支持這么多港口。
組件可能是完美的編譯,但許多開發(fā)人員忽略了一個事實,除了組件之外,還有一個組件,有一個API,并且API的每個不同應用實際上都很大,這是不可避免的編譯后手動手冊。調(diào)整。另一點是,有多少人真正需要發(fā)展這么多的小程序?在較高的金額是雙端:微信和支撐。你已經(jīng)確定,使用芋頭開發(fā)一組代碼的成本應該用微信化妝寫一個集合,然后復制粘貼以更換代碼?
MPX.
GitHub Stars:800 +
滴水產(chǎn)生。滴水非常聰明,MPX遲到了,所以他的路線和芋頭,MPVue不一樣。
芋頭和MPVUE是編制的框架,充分利用反應和VUE生態(tài)發(fā)展。但MPX是不同的,他非常聰明地將MPX定位成一個小程序語法增強框架。換句話說,它也由本機小程序主導,但您可以使用Vue的一些高級功能。
非常聰明的練習。首先,因為MPVue在前面,MPX沒有明亮的點;二,因為你想做完美的Vue編譯小程序支付非常高的維護成本,這不一定要解決。
以下是MPX文檔的以下內(nèi)容:
我們使用Vue中的出色語法特征來增強小程序,而不是讓用戶直接使用Vue語法來開發(fā)一個小程序,主要基于以下注意事項:
翻譯框無法支持源幀的所有語法特性(例如在反應中生成的Vue模板或JSX中的動態(tài)特性,用戶可能在使用源幀語法時遇到不可預測的錯誤,但不確定性
小程序本身的技術(shù)規(guī)范不斷更新進度。許多新技術(shù)規(guī)范不能支持或需要在翻譯框架中支持或需要高的支持成本,并且對于增強的框架,只要新的技術(shù)規(guī)范不與增強特性沖突,可以直接支持
一個非常清晰的團隊,目前有幾個其他框架支持小程序的新功能以跟上官方更新速度。
我的觀點
談?wù)撋?談?wù)摳星?我認為這個過程非常重要。但是對于工作,我只訂購了結(jié)果。我從來沒有對任何技術(shù)偏見,但我唯一的珍惜是我的時間。如果可以解決本機發(fā)展問題,我將永遠不會花費學習第三方框架的成本。如果我可以使用python來解決問題,我不會用java寫java。
第三方框架的存在是有價值的。它確實解決了許多人的需求,但我不建議每個人都失明。如果是一個框架,你不知道為什么你使用它,然后使用本土,最和平的選擇。
不要忽視這一點:你有第二方框架嗎?這當然是不可能的,完全是因為第三方框架,你必須更熟練地發(fā)展本機applet。其他,你如何解決每個第三方框架的“pit”?沒有框架可以保證完美的翻譯成一個小程序。在處理LINUI時,至少發(fā)現(xiàn)最近的團隊,許多框架推廣支持小程序的自定義組件,但是我們使用第三方測試是這些框架無法編譯applet wxs。