為什么 那么多 前端開發者都想學 Vue.js

根據JavaScript 2017 前端庫狀況調查?Vue.js是開發者最想學的前端庫。我在這里說明一下我為什么認為這也是和你一起通過使用 Vue 構建一個簡單的 App 應用程序的原因。

我最近曾與 Evan You,Chris Fritz,Sarah Drasner,和 Adam Jahr 做了一個介紹視頻,而現在你可以在?http://vuejs.org首頁找到它。以下是該視頻的文字版本。

偉大的 JavaScript 遷移

如你所知,JavaScript在過去的 10 年中已經成熟了很多,而且服務器端正常運行的大部分代碼已經遷移到瀏覽器中了。隨著這變得越來越復雜,框架也變得越來越有組織性。

為什么 43%前端開發者想學 Vue.js

我不打算告訴你為什么一個比另一個更好的,雖然在官方網站有一個詳細的比較。

Vue.js旨在成為一個平易近人,多功能,高性能,可維護性,可測試的 JavaScript 框架。Vue 的目也是為了進步,意思就是如果你有一個現有的應用程序存在只占一個部分的前端,你需要更多的互動體驗那么就可以使用 Vue。

或者,您也可以從一開始就在前端構建更多的業務邏輯。Vue 的核心庫和生態系統需要規模。

為什么 43%前端開發者想學 Vue.js

像其他的前端框架,Vue 可以讓你把網頁分為可重用的邏輯組件。每一個都有它自己的HTML、CSS 和 JavaScript來渲染頁面的每一部分。

為什么 43%前端開發者想學 Vue.js

一個示例,說明如何將事物分解成組件

我們的第一個 Vue 項目

我想讓你沒見過 Vue 前讓你先找到代碼的感覺并告訴你一些語法。我不會深入討論細節,但是我們會看到一些核心概念。

與許多 JavaScript 應用程序一樣,我們從將數據顯示到頁面開始。

為什么 43%前端開發者想學 Vue.js

用 Vue 開始構建很簡單。

為什么 43%前端開發者想學 Vue.js

你可以看到在上面的圖片我們包括Vue庫,創建 Vue 的實例,并插入到我們的根元素通過 App 的 ID。EL 代表元素。我們也會將數據移到一個對象中,并將 X 轉換為一個帶有雙花括號的表達式。

如你所見,它有效:

為什么 43%前端開發者想學 Vue.js

沒什么特別的,但數據開始變化時 Vue 就像魔術。如果我跳到控制臺,改變 product 的值,看看會發生什么:

為什么 43%前端開發者想學 Vue.js

VUE 是響應式的,即當我們的數據變化,Vue 會更新所有在我們的網頁使用它的地方。

這與任何類型的數據無關?,?不只是字符串。因此,我們不必使用單一產品,而是使用一系列產品,并將 H2 更新為無序列表。創建一個新的

  • 元素的每一個產品,我們會使用一種特殊的屬性(又名指令) Vue 稱為 v-for。這樣,每個產品都可以得到自己的列表項。

    ?

    為什么 43%前端開發者想學 Vue.js

    如果我們跳進瀏覽器,這就是我們看到的:

    為什么 43%前端開發者想學 Vue.js

    這仍然有點人為設計,所以讓我們先把列表清空,然后從實際的 API 中取出我們的產品列表,這些 API 可能來自某個數據庫。

    為什么 43%前端開發者想學 Vue.js

    如果我們查看打印到頁面的內容,我們將看到:

    為什么 43%前端開發者想學 Vue.js

    如您所見,每個列表項都顯示返回的對象。為了讓這些數據被人類讀取,我們需要改變它顯示的方式。

    為什么 43%前端開發者想學 Vue.js

    我們的結果是:

    為什么 43%前端開發者想學 Vue.js

    我們要注意到數量 0 的物品,讓我們添加一個<span,>內容“缺貨”。我們只想在我們的 item.quantity = = = 0 的出現,所以我們將使用 Vue 的 v-if 指令。

    為什么 43%前端開發者想學 Vue.js

    當然,我們的夾克已經沒貨了:

    為什么 43%前端開發者想學 Vue.js

    如果我們想打印出我們列表中的產品總數呢?我們需要創建一個計算屬性稱為 totalproducts,返回我們的產品總數量。如果您不熟悉 JavaScript reduce 函數的話,我說明下它將從每個產品中添加所有數量。

    為什么 43%前端開發者想學 Vue.js

    正如你可以看到下面,我們現在可以將我們的總庫存打印出來。

    為什么 43%前端開發者想學 Vue.js

    這會兒也可能告訴你關于使用 vue.js 的 Chrome 擴展工具的一個很好的時機。擴展工具的一個很好的特性是,您可以檢查加載到頁面上的數據。

    為什么 43%前端開發者想學 Vue.js

    還有一些 Vue 的響應,讓我們看看在數組中刪除 2 項會發生什么。正如你在下面看到的,不僅是我們的名單更新了,而且我們的總數也是如此。

    為什么 43%前端開發者想學 Vue.js

    接下來,我將向您展示如何通過使用按鈕來增加對該頁面的交互性。我們將為每個產品創建一個添加按鈕,當單擊此按鈕時,我們將增加一個數量。

    為什么 43%前端開發者想學 Vue.js

    注意,當我們添加一個項目(下)時,不僅總庫存得到更新,而且如果我們增加我們的夾克產品,我們的庫存通知就會消失。

    為什么 43%前端開發者想學 Vue.js

    但是,如果我們只想寫夾克或遠足襪的數量呢?我們只需要創建一個新的輸入字段,并將其綁定到我們的產品數量通過 v-model 指向它,并指定這始終是一個 number 即可。

    為什么 43%前端開發者想學 Vue.js

    你會注意到我現在可以輸入每個項目的總數量,并立即獲得更新。我甚至可以把數量設置為零,我得到了我的庫存,我的添加按鈕也仍然可以工作。

    為什么 43%前端開發者想學 Vue.js

    你可以完成這個版本的項目的后,去 JSFiddle 運行它,當然也可以去匯智網(?www.hubwiz.com?)運行它。

    Vue 的一些特點

    如果我們把它構建成一個更大的應用程序,那么我們就要開始把它分解成多個組件和文件,以使程序變得更有條理。

    為什么 43%前端開發者想學 Vue.js

    Vue 甚至提供一個命令行接口,使簡單的開始迅速發展真正的項目。正如您在下面看到的,init 命令可以用來啟動一個新項目。

    為什么 43%前端開發者想學 Vue.js

    我們還可以使用單文件——.Vue 組件文件,其中包含 HTML,JavaScript,CSS 甚至 SCSS。

    為什么 43%前端開發者想學 Vue.js

    你在這里看到的只觸及到 Vue 表面上可以做什么。有很多東西可以幫助你構建、組織和擴展你的前端應用程序。要真正開始編碼,我將推薦兩種資源。一個是去下載資源手冊表到這里:?http://www.vuemastery.com/download-1,另外一個是官方文件:?https://vuejs.org/v2/guide/。

    轉自:https://www.v2ex.com/t/418612

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/448458.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/448458.shtml
英文地址,請注明出處:http://en.pswp.cn/news/448458.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

進程間通信之管道通信

兩個程序之間傳遞數據的一種簡單方法是使用popen和pclose。 #include <stdio.h> FILE *popen(const char *command, const char *type); int pclose(FILE *stream); popen函數允許一個程序將另一個程序作為新進程來啟動&#xff0c;并可以傳遞數據給它或者通過它接收數據…

vue 各組件 使用 Demo

環境搭建 前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 假設你已經通讀vue官方文檔&#xff08;文檔都沒讀一遍&#xff08;至少&#xff09;&#xff0c;那不建議動手擼碼&#xff…

Dropbox推獨立應用,公司估值已達100億美元

摘要&#xff1a;Dropbox剛獲得5億美元的新一輪融資&#xff0c;其估值已高達100億美元&#xff0c;現在又推出針對云服務的獨立應用Carousel&#xff0c;不久之后&#xff0c;還會有應用陸續推出&#xff0c;隨著美國前國務卿賴斯的加盟&#xff0c;Dropbox在云市場的表現異常…

SQL經典面試題(二)

有3個表S&#xff0c;C&#xff0c;SCS&#xff08;SNO&#xff0c;SNAME&#xff09;代表&#xff08;學號&#xff0c;姓名&#xff09; //主鍵&#xff1a;SNO //多個人&#xff0c;多門課 3張表 &#xff0c;SC 關系表C&#xff08;CNO&#xff0c;CNAME&#xff0c;…

進程間通信之信號he信號量

信號的篇幅較少&#xff0c;就把他和信號量放在一起了。先講講他們之間的區別&#xff1a; 1.信號&#xff1a;&#xff08;signal&#xff09;是一種處理異步事件的方式。信號時比較復雜的通信方式&#xff0c;用于通知接受進程有某種事件發生&#xff0c;除了用于進程外&…

開源當自強:我們不是“便宜貨”

之前人們爭相使用開源軟件&#xff0c;無非是因為它便宜、好用、易得&#xff0c;不過根據最新的開源軟件調查顯示&#xff0c;人們使用開源軟件最主要的原因還是看重它的高質量。 成本低是很過公司參與開源項目的最主要原因之一&#xff0c;而現在他們視開源是一條通往創新、省…

前端學習:Vue.js基本使用

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 Vue教程文檔&#xff1a; https://cn.vuejs.org/v2/guide/ 定義 實例&#xff1a; new Vue() 掛載點: el 數據&#xff1a;data 模…

PWE

Obstacle Override Logic The obstacle override logic provides the possibility to override obstacle within a window movement by selective switching off the anti-trap functionality.轉載于:https://www.cnblogs.com/dannykong/p/11151813.html

進程間通信之消息隊列

一、什么是消息隊列 unix早期通信機制之一的信號能夠傳送的信息量有限&#xff0c;管道則只能傳送無格式的字節流&#xff0c;這無疑會給應用程序開發帶來不便。消息隊列&#xff08;也叫做報文隊列&#xff09;則克服了這些缺點。 消息隊列就是一個消息的鏈表。可以把消息看…

“ 愿我如星君如月,夜夜流光相皎潔 ...”

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 永遠相信愛情 ... 從一而終 ... --------------------------------------------------------------------------- 后記&#xff1a;2…

python內建函數和工廠函數的整理

內建函數參閱&#xff1a; https://www.cnblogs.com/pyyu/p/6702896.html 工廠函數&#xff1a; 本篇博文比較粗糙&#xff0c;后續會深入整理轉載于:https://www.cnblogs.com/qiang-upc/p/11155786.html

顯卡天梯圖:2014最新顯卡性能天梯圖

隨著電腦游戲的推廣&#xff0c;很多用戶都喜歡上了電腦網絡游戲&#xff0c;所以組裝電腦用戶在裝機的時候&#xff0c;會考慮電腦配置的游戲性能&#xff0c;要提高電腦配置游戲性能首要條件就是顯卡性能要強&#xff0c;如果顯卡性能不佳&#xff0c;那么其它方面性能再強&a…

進程間通信之分別用共享內存和信號量實現賣票

利用共享內存實現的賣票系統&#xff1a; 利用flag來保證同一時間只有一個程序使用內存&#xff0c;使用結束還原。 #include <stdio.h> #include <sys/ipc.h> #include <sys/shm.h> #include <sys/types.h> #include <string.h> #include <…

shiro 的 @RequiresPermissions 注解使用

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 權限控制是shiro最核心的東西 Shiro權限聲明通常是使用以冒號分隔的表達式。一個權限表達式可以清晰的指定資源類型&#xff0c;允許的…

【顯卡天梯圖】2014年最新顯卡天梯圖 – 【迄今最全系列顯卡】

【顯卡天梯圖】2014年最新顯卡天梯圖 – 【迄今最全系列顯卡】 隨著電腦游戲的推廣&#xff0c;很多用戶都喜歡上了電腦網絡游戲&#xff0c;所以組裝電腦用戶在裝機的時候&#xff0c;會考慮電腦配置的游戲性能&#xff0c;要提高電腦配置游戲性能首要條件就是顯卡性能要強&am…

原理系列:Spark1.x 生態圈一覽

Spark生態圈&#xff0c;也就是BDAS&#xff08;伯克利數據分析棧&#xff09;&#xff0c;是伯克利APMLab實驗室精心打造的&#xff0c;力圖在算法&#xff08;Algorithms&#xff09;、機器&#xff08;Machines&#xff09;、人&#xff08;People&#xff09;之間通過大規模…

SpringMVC 注解 : @ModelAttribute

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 SpringMVC 注解 &#xff1a; ModelAttribute 的用法如上。 轉自&#xff1a;https://blog.csdn.net/lovesomnus/article/details/78873…

網絡編程項目(聊天室項目)

一、實現目標 一個在Linux下可以使用的聊天軟件&#xff0c;要求至少實現如下功能&#xff1a; 1. 采用Client/Server架構 2. Client A 登陸聊天服務器前&#xff0c;需要注冊自己的ID和密碼 3. 注冊成功后&#xff0c;Client A 就可以通過自己的ID和密碼登陸聊天服務器 4…

CPU天梯圖:2014年最新CPU性能天梯圖

用戶在組裝電腦的前期需要考慮怎么選擇適合自己的CPU&#xff0c;現在CPU性能強的比較貴&#xff0c;便宜的CPU性能又比較差&#xff0c;選擇性價比高并且適合自己的處理器還真是比較花心思。在2014年的時候&#xff0c;最主流熱門的AMD處理器是AMD A10-6800K&#xff0c;最新推…

解決: idea 修改 jsp 后,頁面刷新無效

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 idea 修改 jsp 后瀏覽器訪問無效。 解決&#xff1a;進入 idea 配置 修改部署方式&#xff1a; 修改 更新文件方式&#xff1a; OK了。