新聞中心
我想告訴你,我開(kāi)始享受使用Vue.js和進(jìn)行前端開(kāi)發(fā)的故事。這不應(yīng)該被理解為一篇關(guān)于為什么Vue.js可能比React,Angular或任何你正在考慮的其他Web框架更好的文章。Vuejs是令人驚嘆的,但我們生活在一個(gè)作為前端開(kāi)發(fā)人員同樣令人驚嘆的時(shí)代。

創(chuàng)新互聯(lián)專(zhuān)注于豐潤(rùn)網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供豐潤(rùn)營(yíng)銷(xiāo)型網(wǎng)站建設(shè),豐潤(rùn)網(wǎng)站制作、豐潤(rùn)網(wǎng)頁(yè)設(shè)計(jì)、豐潤(rùn)網(wǎng)站官網(wǎng)定制、微信小程序定制開(kāi)發(fā)服務(wù),打造豐潤(rùn)網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供豐潤(rùn)網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。
如果你幾年前和我交談過(guò),我會(huì)把自己定位為一個(gè)后端開(kāi)發(fā)人員,掌握服務(wù)器和數(shù)據(jù)庫(kù)管理。面向?qū)ο蟮恼Z(yǔ)言,java和c #,我想找到一種自己需要交付程序時(shí)使用的唯一的開(kāi)發(fā)語(yǔ)言,我逐漸了解到更多關(guān)于.NET和SQL服務(wù)器的堆棧技術(shù)。當(dāng)時(shí)我有這樣一個(gè)概念,前端開(kāi)發(fā)者只是使用右腦的附庸風(fēng)雅的人,并不是“真正的”編程。
[[218055]]
但是,在我最后一次求職,選擇很少。特別是工作面試,我看到了自己是如何失敗的。那次失敗非常令人沮喪,但我從中吸取了不少教訓(xùn)。我獲得了一個(gè)職位,利用了我在SharePoint的經(jīng)驗(yàn)。我在SharePoint的經(jīng)驗(yàn)并不特別:用GUI、工作流等設(shè)計(jì)頁(yè)面這個(gè)不是我理想中的工作,而是為了生活不得不做的工作。
當(dāng)我剛開(kāi)始的時(shí)候,我接觸過(guò)像我過(guò)去做過(guò)的任何類(lèi)似的項(xiàng)目。我依靠GUI設(shè)計(jì)用戶(hù)界面。幸運(yùn)的是,使用數(shù)據(jù)庫(kù)的經(jīng)驗(yàn)使我能夠以規(guī)范化的方式設(shè)計(jì)列表,但似乎缺乏用戶(hù)界面方面的功能。在SharePoint設(shè)計(jì)器中,即使修改了底層ASP,某些效果也很難實(shí)現(xiàn)。
我和一個(gè)很棒的開(kāi)發(fā)人員進(jìn)行了討論,這真的觸動(dòng)了我,于是我開(kāi)始了進(jìn)入前端框架的旅程。她說(shuō):“你知道…SharePoint支持REST服務(wù)。”啊,是的!我可以在SharePoint上使用Ajax,并根據(jù)響應(yīng)情況建立我的HTML。這將是超級(jí)有趣的!
我們的第一次迭代的一個(gè)特定的應(yīng)用**xmlhttprequests,**通過(guò)JavaScript函數(shù)構(gòu)建HTML。這種方法的連接如此之多以至于我們的函數(shù)和字符串變得越來(lái)越難維護(hù)。所以,我想知道這個(gè)問(wèn)題是否有一個(gè)更好的通用的解決方案。
當(dāng)然有!歡迎閱讀“Why you should use framework X”的視頻和博客。在做了教程和觀看關(guān)于這個(gè)主題的辯論之后,我拒絕使用框架。畢竟,使用一個(gè)框架意味著每個(gè)人都必須變得聰明起來(lái)。然而,研究框架的過(guò)程中,我碰到Handlebars,模板引擎使用的Ember。
所以,我們做了任何明智的團(tuán)隊(duì)都會(huì)做的事。我們重寫(xiě)了項(xiàng)目使用該模板引擎。除了顯式調(diào)用編譯函數(shù)之外,這是一次不錯(cuò)的體驗(yàn)。最初的渲染完全沒(méi)有問(wèn)題。不過(guò),我們需要添加在項(xiàng)目列表中折疊/展開(kāi)某些項(xiàng)的能力。我的這個(gè)問(wèn)題的第一種方法是給我的對(duì)象設(shè)置一個(gè)“visible”的屬性,當(dāng)屬性的值發(fā)生了變化那么就重新編譯模版。這意味著數(shù)百個(gè)元素必須根據(jù)變化重新渲染。我們利用jQuery來(lái)應(yīng)用處理程序,它可以基于某些選擇器顯示/隱藏元素。
我覺(jué)得這很混亂。最終產(chǎn)品是功能性的,但是我能在一個(gè)月內(nèi)完成代碼并維護(hù)它嗎?可能需要一年?如果不費(fèi)力氣的話(huà)。請(qǐng)?jiān)试S我借此機(jī)會(huì)說(shuō),可維護(hù)的代碼寫(xiě)了大量使用jQuery和Handlebars。在這一點(diǎn)上,我沒(méi)有能力把它搞到位。
所以,我就想回去研究一下可用的框架。有這么多好的框架可選,但我們有一個(gè)獨(dú)特的環(huán)境。我們不能使用node。沒(méi)有NPM,沒(méi)有工具被大量使用在每一個(gè)框架。我們得出的結(jié)論是,在瀏覽器中運(yùn)行Babel也會(huì)降低性能??紤]到這些條件,React、Ember和Angular2 +是不可行的選項(xiàng)。
我們沒(méi)有認(rèn)真考慮AngularJS(1)。我已經(jīng)用它實(shí)現(xiàn)了另一個(gè)項(xiàng)目,但它已不被官方支持了,并且vue.js剛剛發(fā)布了V2版本和一個(gè)清晰的在瀏覽器使用的路徑。它會(huì)繼續(xù)受到歡迎,并且有可用的工具。所以,如果我們不失時(shí)機(jī)的使用它,包括一個(gè)它提供的工具時(shí),我們也就決定支持它了。
為什么是Vue.js,好玩嗎?
許多我所給的原因可以歸因于Vue的替代品。
模板
最初使我對(duì)vue.js感興趣的是模板。使用一些花括號(hào),我可以根據(jù)JavaScript訪問(wèn)的變量將值插入到提交內(nèi)容中。通過(guò)模板的使用等于提供了一個(gè)路徑,Vue.js DOM和組件模板更容易被使用。另外,沒(méi)有太關(guān)注在IE9 +使用vue.js,而IE不支持模板。
響應(yīng)性
事實(shí)上,我可以對(duì)我們的模型進(jìn)行更改,它會(huì)自動(dòng)更新頁(yè)面上的內(nèi)容,這也是為什么讓我覺(jué)得angular.js好用的原因。類(lèi)似的原來(lái)“ng-model”模型,vue.js提供了一個(gè)“V”的指令可以很容易的把輸入內(nèi)容顯示出來(lái)。使用watchers,這種響應(yīng)擴(kuò)展到執(zhí)行操作不一定與頁(yè)面上發(fā)生的事情相關(guān)。
組件
雖然你不使用組件也可以利用Vue的響應(yīng)和模板,但組件化的體系結(jié)構(gòu)的實(shí)現(xiàn)是真的很有趣。學(xué)習(xí)如何將行為封裝到組件中是很有趣的,它使我能夠高效地分割代碼。類(lèi)似于生活在C #世界在哪里類(lèi)需要做的太多了,我意識(shí)到當(dāng)一個(gè)組件可能做的太多了。這種做法在某種程度上激發(fā)了智力,刺激了編程時(shí)的感覺(jué)。
為什么覺(jué)得前端這么有趣?
作為一個(gè)孩子,我的夢(mèng)想就是編程。確切地說(shuō)是什么?桌面應(yīng)用程序和游戲。當(dāng)我開(kāi)始從事真正的編程工作時(shí),我真的很想從事那種我的工作使別人很受益的。我不知道你,但直到最近,我有一個(gè)先入為主的概念“真正的程序員”層次結(jié)構(gòu),看起來(lái)像是這樣。
- 真正的程序員
- 操作系統(tǒng)/內(nèi)核程序員
- 桌面應(yīng)用程序
- 游戲程序員
- 后端網(wǎng)絡(luò)程序員
- 前端網(wǎng)絡(luò)程序員
- SharePoint /銷(xiāo)售人員/其他平臺(tái)程序員
- 微軟Office(Access / Excel)程序員
- 不是真正的程序員
這種想法真的讓我覺(jué)得自己是個(gè)做后臺(tái)的人,更不用說(shuō)前端了。在很長(zhǎng)很長(zhǎng)的一段時(shí)間里,甚至在許多地方,前端和后臺(tái)兩者都是同一個(gè)人來(lái)做。這導(dǎo)致了對(duì)前端較少關(guān)注,導(dǎo)致產(chǎn)生了很多低質(zhì)量的站點(diǎn)。隨后,公司開(kāi)始雇用前端的人,以美元為單位得到他們的費(fèi)用。這份工作名聲不太好,我不想和那個(gè)名聲有任何關(guān)系。
然而,如前所述,我發(fā)現(xiàn)自己處于一個(gè)需要依靠前端滿(mǎn)足需求的尷尬位置。令我驚訝的是,瀏覽器的編程不僅有趣,而且功能齊全。
瀏覽器的能力
我總是驚訝于瀏覽器能處理什么。即使是可憐的老Internet Explorer,也可以在不調(diào)用服務(wù)器的情況下處理讀取、解析和創(chuàng)建Excel文件。畫(huà)布和SVG給我們兩個(gè)超級(jí)有用的方法來(lái)創(chuàng)造美麗和動(dòng)態(tài)的圖像/動(dòng)畫(huà)。使用Ajax,我們可以創(chuàng)建周期性地、無(wú)縫地向用戶(hù)更新的動(dòng)態(tài)內(nèi)容。
分享就是快樂(lè)
在客戶(hù)端開(kāi)發(fā)時(shí)如果沒(méi)有隱藏你的源代碼。它在那里讓世界都可以看到。所以,也不震驚,JavaScript的項(xiàng)目在很大程度體現(xiàn)在GitHub上。此外,許多項(xiàng)目是麻省理工學(xué)院,Apache,或其他許可非常友好。**Score!**來(lái)自令人敬畏的人的貢獻(xiàn)幫助我以更快、更有意義的方式為我的公司做出貢獻(xiàn)。
即時(shí)滿(mǎn)足
與桌面應(yīng)用程序開(kāi)發(fā)類(lèi)似,我們常常以可視化的方式看到代碼的影響。我們可以使用CSS和視覺(jué)上有吸引力的站點(diǎn)的一點(diǎn)天賦,來(lái)改善我們作為開(kāi)發(fā)者在我們的老板和用戶(hù)中的印象。再加上一個(gè)視覺(jué)框架Twitter的Bootstrap或者Bulma,我們真的可以減少時(shí)間而增加一些吸引力。
Write Once Run Everywhere
舊的java web開(kāi)發(fā)說(shuō)跑起來(lái)比java本身要更真實(shí)。使代碼兼容多個(gè)瀏覽器和針對(duì)不同屏幕大小的布局同樣面臨挑戰(zhàn)。這些挑戰(zhàn)本身很有趣,因?yàn)檫@讓我們了解了各種平臺(tái)。
JavaScript
JavaScript繼續(xù)以極快的速度發(fā)展,但它是一種非常有趣的語(yǔ)言。從“= =”和“= = =”差異中體會(huì)函數(shù)處理類(lèi)原型繼承功能的編程方法,學(xué)習(xí)這種語(yǔ)言已經(jīng)超好玩。能夠?qū)⑿碌墓δ蹷abel到我的網(wǎng)站(項(xiàng)目)就更是屌爆了一樣。
總結(jié)一下
作為前端Web開(kāi)發(fā)人員,我可以與職場(chǎng)中的優(yōu)秀人員一起工作,并在更大的開(kāi)發(fā)人員社區(qū)中獲得對(duì)我想法的反饋。你為什么喜歡前端開(kāi)發(fā)?你覺(jué)得Vue.js怎么樣?
感謝閱讀!
分享標(biāo)題:為什么說(shuō)Vue.js是如此的有趣?
新聞來(lái)源:http://fisionsoft.com.cn/article/dhsseph.html


咨詢(xún)
建站咨詢(xún)
