node.js - 我是一個(gè)做前端的,求教如何學(xué)習(xí)vue,node等js引擎?
問(wèn)題描述
一直在做寫(xiě)靜態(tài)html,ajax數(shù)據(jù)對(duì)接之類(lèi)的工作,有點(diǎn)js基礎(chǔ),jquery也常用,想著以后就走前端這條路了,原來(lái)是用for循環(huán)拼接html,現(xiàn)在用到模板引擎,想提高一下自己學(xué)習(xí)一下vue等js引擎,從何下手求大神指一條路,另外能否解釋一下vue在項(xiàng)目中有什么具體的用途嗎?除了作為模板使用以外還能代替什么工作?
麻煩了各位前輩,在此謝過(guò)~~~~~~~!
問(wèn)題解答
回答1:什么是Vue?vue不僅僅是一個(gè)模板引擎,它可以構(gòu)建數(shù)據(jù)驅(qū)動(dòng)的web界面。vue實(shí)現(xiàn)了雙向數(shù)據(jù)綁定,可以避免直接操作dom,可能你對(duì)此沒(méi)有什么概念,請(qǐng)先簡(jiǎn)單地補(bǔ)一下課《MVC,MVP 和 MVVM 的圖示》最明顯的區(qū)別是,你平時(shí)寫(xiě)頁(yè)面多數(shù)要通過(guò)jquery去操作dom,才能控制某些狀態(tài)的變化,但是使用vue,由于是數(shù)據(jù)驅(qū)動(dòng)的,狀態(tài)的改變與頁(yè)面的dom直接綁定了,并不需要操作dom。自己感受一下。
vue所適用的場(chǎng)景1、存在復(fù)雜表單的應(yīng)用;2、不需要考慮seo的單頁(yè)應(yīng)用;3、內(nèi)部系統(tǒng);4、不需要支持低版本IE瀏覽器的應(yīng)用;5、其他帶殼的web應(yīng)用;
純粹的模板引擎vue并不是純粹的模板引擎,它應(yīng)該歸類(lèi)于實(shí)現(xiàn)了MVVM的前端框架。而模板引擎所做的工作只是渲染頁(yè)面,你既可以在前端渲染也可以在后端渲染。如果你在前端頁(yè)面引入模板引擎,那么你就是在前端渲染,如果你在express等后端框架內(nèi)引入模板引擎,則可以實(shí)現(xiàn)后端渲染。常用的模板引擎有handlebars、ejs、jade、swig、nunjunks、artTemplate等等。最簡(jiǎn)單的模板引擎?zhèn)€人認(rèn)為是artTemplate,但是要論功能的強(qiáng)大,則是swig/jade。建議先從artTemplate入門(mén)。
什么是node?官網(wǎng)的解釋是『Node.js 是一個(gè)基于 Chrome V8 引擎的 JavaScript 運(yùn)行環(huán)境。Node.js 使用了一個(gè)事件驅(qū)動(dòng)、非阻塞式 I/O 的模型,使其輕量又高效。Node.js 的包管理器 npm,是全球最大的開(kāi)源庫(kù)生態(tài)系統(tǒng)。』可能你并不知道這代表了什么,我也不知道怎么解釋?zhuān)銘?yīng)該自己去玩一下,然后逐漸就會(huì)有一點(diǎn)認(rèn)識(shí)。可以看一下這個(gè)《node包教不包會(huì)》,當(dāng)你開(kāi)始想學(xué)習(xí)一點(diǎn)后臺(tái)的知識(shí)時(shí),你可以看一下N-blog。
如何學(xué)習(xí)?啃文檔是最好的出路。一次看不懂,看三次,肯定能看得懂。要靜得下心來(lái),而不是到處找什么教程,文檔本身就有教程。。
回答2:個(gè)人覺(jué)得學(xué)JavaScript框架無(wú)非是建立在JavaScript原生語(yǔ)言的基礎(chǔ)上學(xué)習(xí),所以,為了更好學(xué)習(xí)這些js框架,得深入了解js的語(yǔ)言吧,個(gè)人推薦先看一遍并理解underscore.js的源碼,這樣你會(huì)發(fā)現(xiàn)你原來(lái)對(duì)js的學(xué)習(xí)都是不全面的,接著對(duì)于前端框架來(lái)說(shuō)看文檔是很好的方式,尤其是vue.js已經(jīng)有中文文檔,看起來(lái)快一點(diǎn),而node的話(huà)辛苦點(diǎn)看看官方英文的文檔吧,雖然多而且是英文但我也堅(jiān)持看完了。然后node做開(kāi)發(fā)你可以去嘗試koa框架,一個(gè)輕量級(jí)的后臺(tái)框架,js的回調(diào)寫(xiě)法很舒服具體看你會(huì)明白的。
回答3:我最近也在學(xué)習(xí)node,感覺(jué)這確實(shí)是一難啃的骨頭,看node的時(shí)候里面還多延伸的知識(shí)點(diǎn),然后去補(bǔ)習(xí),然后發(fā)現(xiàn)要掌握的東西太多了,現(xiàn)在都不知道從哪下手了。之前問(wèn)人家會(huì)node的牛牛,說(shuō)學(xué)node最好是能懂一門(mén)后臺(tái)語(yǔ)言。。。。
回答4:看文檔學(xué)習(xí),就是學(xué)習(xí)一些概念
回答5:vue不了解node.js我也認(rèn)為應(yīng)該學(xué)習(xí)一種簡(jiǎn)單的后臺(tái)語(yǔ)言以后再學(xué)比較好,否則很難明白node.js的優(yōu)勢(shì)在哪。如果直接學(xué)node.js的話(huà),去youtube上找?guī)讉€(gè)視頻,看出點(diǎn)感覺(jué)來(lái),再去github上搜一些短小的project來(lái)看看。沒(méi)有后臺(tái)語(yǔ)言基礎(chǔ)的話(huà),不建議直接看官方文檔,因?yàn)榭戳税胩炷氵€是啥也寫(xiě)不出來(lái)。
回答6:感覺(jué)寫(xiě)nodejs之前先補(bǔ)補(bǔ)js基礎(chǔ),把es6的語(yǔ)法看看.一入前端深似海,技能樹(shù)點(diǎn)開(kāi)瞬間爆炸,慢慢來(lái).VueJS 挺好用的,最近剛出了2.0,湊個(gè)熱鬧.
回答7:我建議你的學(xué)習(xí)路徑如下:
HTML
CSS
Javascript
上面在學(xué)的過(guò)程中一定要多動(dòng)手做幾個(gè)項(xiàng)目,比如說(shuō)寫(xiě)一個(gè)SegmentFault的首頁(yè),最好做兩三個(gè)項(xiàng)目,而且布局什么的都最好還不要一樣
上面的任務(wù)都做完之后然后就可以接觸node和webpack了,都不需要太深,因?yàn)閚ode太深了,屬于大前端,等你了解了這些個(gè)工具知道你就可以接觸前端框架了,比如先了解如下三個(gè)流行的框架:
vue
angular
react
然后都做一些小項(xiàng)目,綜合選擇適合自己的框架,最后就愉快地寫(xiě)代碼把。
回答8:nodejs 是能讓前端變?nèi)珬5淖儜B(tài)框架,其實(shí)就是在學(xué)后端,利用javascript語(yǔ)言。當(dāng)然學(xué)之前可以先懂點(diǎn)什么叫服務(wù)器,什么叫路由,http協(xié)議,不一定要深入。nodejs入門(mén)教程 我是敲這里面的代碼入的門(mén)。然后再學(xué)學(xué)標(biāo)配的MongoDB,好吧,可以隨意開(kāi)發(fā)一個(gè)完整的網(wǎng)站了。接下來(lái)就是去什么阿里云,網(wǎng)易,什么的買(mǎi)一個(gè)云服務(wù)器ecs。接著買(mǎi)域名域名備案然后就成為一名站長(zhǎng)回過(guò)頭,自己走了好久~~
