vue學(xué)習(xí)筆記

vue.js

提醒:Vuejs 如今正處在快速發(fā)展中彤守,很多資源隨時都有可能過時(outdated)挺智,記得查看最新文檔饰迹,使用最新資源商架。

Vue 的官方說明

數(shù)據(jù)驅(qū)動的組件与纽,為現(xiàn)代化的 Web 界面而生侣签。

Vue.js(讀音 /vju?/, 類似于 view)是一個構(gòu)建數(shù)據(jù)驅(qū)動的 web 界面的庫。Vue.js 的目標(biāo)是通過盡可能簡單的 API 實(shí)現(xiàn)響應(yīng)的數(shù)據(jù)綁定和組合的視圖組件急迂。

Vue.js 自身不是一個全能框架——它只聚焦于視圖層影所。因此它非常容易學(xué)習(xí),非常容易與其它庫或已有項目整合僚碎。另一方面猴娩,在與相關(guān)工具和支持庫一起使用時,Vue.js 也能完美地驅(qū)動復(fù)雜的單頁應(yīng)用勺阐。

關(guān)于 Vue 的作者

尤雨溪 / 昵稱:尤小右 / 英文名:Evan You

是個介于設(shè)計師和程序員之間的大牛卷中,設(shè)計能力比程序員好,編程能力比設(shè)計師(和普通程序員)好太多渊抽!

如今辭了工作蟆豫,專心投入到了 Vuejs 的發(fā)展和推廣中。

工作信息:

Meteor (2014 - 2016)

地區(qū):海外 懒闷,美國

職位:Core dev

Google (2012 - 2014)

地區(qū):海外 十减,美國

職位:Creative Lab

相關(guān)信息:

JavaScript Air Episode 016: JavaScript Frameworks: Vue.js

和 Vue.js 框架的作者聊聊前端框架開發(fā)背后的故事 | Teahour.fm

Vue 的基本用法

Vue 相比于 React 和 Angular 容易上手多了,因此我對 Vue 的學(xué)習(xí)主要以文檔為主愤估,視頻為輔(只有像我這種菜鳥才看視頻教程嫉称,真正的牛人文檔瞄幾眼就會了(-_-#))。

下載使用(兩種方式)

直接下載并用 <script> 標(biāo)簽引入灵疮,Vue 會被注冊為一個全局變量织阅。

平時對于 Dom 操作比較頻繁的小項目可以直接這樣使用。

Vue.js 提供一個官方命令行工具震捣,可用于快速搭建大型單頁應(yīng)用荔棉。該工具提供開箱即用的構(gòu)建工具配置,帶來現(xiàn)代化的前端開發(fā)流程蒿赢。只需一分鐘即可啟動帶熱重載润樱、保存時靜態(tài)檢查以及可用于生產(chǎn)環(huán)境的構(gòu)建配置的項目:

針對單頁應(yīng)用的構(gòu)建推薦使用這種方式,可以更好的體驗到 vue 所提供的組件化功能 (單文件組件)羡棵,順帶著享受到 webpack 帶來的流暢的自動化開發(fā)體驗壹若。

# 全局安裝 vue-cli

$ npm install -g vue-cli

# 創(chuàng)建一個基于 "webpack" 模板的新項目

$ vue init webpack my-project

# 安裝依賴,走你

$ cd my-project

$ npm install

$ npm run dev

Vue 的使用教程

廢話不多說,大家直接看官方文檔店展,已經(jīng)寫得非常棒了养篓。

頁面上的搜索功能可以快速幫助你定位到相關(guān)文檔說明,非常方便赂蕴。

針對相關(guān)問題的解決方法:

問題:Vue 還未實(shí)例化前柳弄, HTML 模板中的 "{{ }}"( Mustache 標(biāo)簽) 會暴露在用戶界面上,也就是說頁面有那么一瞬間會將所有的 "{{ }}" 都顯示出來概说,如何解決碧注?

解決:

方法一:使用 v-cloak 指令,這個指令保持在元素上直到關(guān)聯(lián)實(shí)例結(jié)束編譯糖赔。和 CSS 規(guī)則如 [v-cloak] { display: none } 一起用時萍丐,這個指令可以隱藏未編譯的 Mustache 標(biāo)簽直到實(shí)例準(zhǔn)備完畢。

v-cloak 文檔說明

[v-cloak] {

? display: none;

}<div v-cloak>

? {{ message }}

</div>方法二:使用 v-text

v-text 文檔說明

<span v-text="msg"></span>

<!-- same as -->

<span>{{msg}}</span>問題:新增的 data 數(shù)據(jù)沒法同步響應(yīng)到頁面放典?

解決:認(rèn)真閱讀官方文檔里的深入響應(yīng)式原理逝变。

在實(shí)例創(chuàng)建之后添加屬性并且讓它是響應(yīng)的:

對于 Vue 實(shí)例,可以使用 $set(key, value) 實(shí)例方法:

vm.$set('b', 2)

// `vm.b` 和 `data.b` 現(xiàn)在是響應(yīng)的對于普通數(shù)據(jù)對象刻撒,可以使用全局方法 Vue.set(object, key, value):

Vue.set(data, 'c', 3)

// `vm.c` 和 `data.c` 現(xiàn)在是響應(yīng)的注意事項:

注意如果 prop 是一個對象或數(shù)組骨田,是按引用傳遞耿导。在子組件內(nèi)修改它會影響父組件的狀態(tài)声怔,不管是使用哪種綁定類型

針對同一個元素的后一個 watch 會覆蓋前一個 watch,無論是不是 deep

自定義指令內(nèi)部可以通過 this.vm.someKey 來訪問到組件的數(shù)據(jù)

自定義指令名不要有大寫舱呻,props 命名也不要有大寫

Vue 的組件化實(shí)踐

組件(Component)是 Vue.js 最強(qiáng)大的功能之一醋火。組件可以擴(kuò)展 HTML 元素,封裝可重用的代碼箱吕。在較高層面上芥驳,組件是自定義元素,Vue.js 的編譯器為它添加特殊功能茬高。在有些情況下兆旬,組件也可以是原生 HTML 元素的形式,以 is 特性擴(kuò)展怎栽。

使用上文提到的官方命令行工具:

目前可供使用的模板包括(模板名-說明):

webpack - A full-featured Webpack + vue-loader setup with hot reload, linting, testing & css extraction.(全功能的 Webpack + vue-loader 設(shè)置丽猬,包括熱加載,靜態(tài)檢測熏瞄,測試脚祟,css 提取)

webpack-simple - A simple Webpack + vue-loader setup for quick prototyping.(一個簡易的 Webpack + vue-loader 設(shè)置强饮,以便于快速開始)

browserify - A full-featured Browserify + vueify setup with hot-reload, linting & unit testing.(全功能的 Browserify + vueify 設(shè)置由桌,包括熱加載,靜態(tài)檢測,單元測試)

browserify-simple - A simple Browserify + vueify setup for quick prototyping.(一個簡易的 Browserify + vueify 設(shè)置行您,以便于快速開始)

simple - The simplest possible Vue setup in a single HTML file

相關(guān)閱讀:

Announcing vue-cli

(譯)Vuejs 自己的構(gòu)建工具 vue-cli

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末铭乾,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子邑雅,更是在濱河造成了極大的恐慌片橡,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件淮野,死亡現(xiàn)場離奇詭異捧书,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)骤星,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進(jìn)店門经瓷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人洞难,你說我怎么就攤上這事舆吮。” “怎么了队贱?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵色冀,是天一觀的道長。 經(jīng)常有香客問我柱嫌,道長锋恬,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任编丘,我火速辦了婚禮与学,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘嘉抓。我一直安慰自己索守,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布抑片。 她就那樣靜靜地躺著卵佛,像睡著了一般。 火紅的嫁衣襯著肌膚如雪敞斋。 梳的紋絲不亂的頭發(fā)上截汪,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天,我揣著相機(jī)與錄音渺尘,去河邊找鬼挫鸽。 笑死,一個胖子當(dāng)著我的面吹牛鸥跟,可吹牛的內(nèi)容都是我干的丢郊。 我是一名探鬼主播盔沫,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼枫匾!你這毒婦竟也來了架诞?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤干茉,失蹤者是張志新(化名)和其女友劉穎谴忧,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體角虫,經(jīng)...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡沾谓,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了戳鹅。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片均驶。...
    茶點(diǎn)故事閱讀 40,040評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖枫虏,靈堂內(nèi)的尸體忽然破棺而出妇穴,到底是詐尸還是另有隱情,我是刑警寧澤隶债,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布腾它,位于F島的核電站,受9級特大地震影響死讹,放射性物質(zhì)發(fā)生泄漏瞒滴。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一回俐、第九天 我趴在偏房一處隱蔽的房頂上張望逛腿。 院中可真熱鬧稀并,春花似錦仅颇、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至引颈,卻和暖如春耕皮,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蝙场。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工凌停, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人售滤。 一個月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓罚拟,卻偏偏與公主長得像台诗,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子赐俗,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 個人基于對 Vuejs 的學(xué)習(xí)制作了一個 Todo 單頁應(yīng)用 Lightodo拉队,功能包括:添加待辦事項卡片,對卡片...
    AlessiaLi閱讀 21,568評論 16 308
  • 一阻逮、vue-router 1粱快、簡介 我們經(jīng)常使用vue開發(fā)單頁面應(yīng)用程序(SPA)。開發(fā)SPA過程中叔扼,路由必不可少...
    間陽幕賓閱讀 288評論 0 1
  • 一事哭、Vue.js介紹 Vue.js也稱為Vue,讀音類似view瓜富,錯誤讀音v-u-e慷蠕,由華人尤雨溪開源并維護(hù)。 V...
    間陽幕賓閱讀 575評論 1 6
  • 班級情況: ...
    A越單純越幸福閱讀 392評論 0 0
  • 曾經(jīng)看到過這樣一個女生食呻,我一看她的眼睛就覺得整個世界都安靜下來了流炕!此生,我看到過無數(shù)只眼睛仅胞,只覺得她的眼睛最好看每辟。...
    緣眸閱讀 422評論 0 4