2019 Vue開髮指南:你都需要學點啥?

来源:https://www.cnblogs.com/powertoolsteam/archive/2019/06/20/11056531.html
-Advertisement-
Play Games

您將會從這篇文章里學習到如何在當下的 Vue.js 開發領域取得一定的成績。 ...


轉載請註明出處:葡萄城官網,葡萄城為開發者提供專業的開發工具、解決方案和服務,賦能開發者。
原文出處:https://dzone.com/articles/vue-development-in-2019-what-you-need-to-know

如果您是Vue開發的新手,您可能已經聽過很多關於它的專業術語了,例如:單頁面應用程式、非同步組件、伺服器端呈現等。

另外您可能還經常聽到和Vue一起提到的工具和庫,如Vuex、Webpack、Vue CLI和Nuxt。

也許您在面對這些未知的術語和工具時會感到無助和絕望,沒關係,您並不孤單,因為這是所有新手在初次接觸Vue時都會有的感受。

但如果您試圖要一次掌握所有這些內容,那麼這些龐大的體系很可能會壓垮你。為此,我在這裡將為大家展示一個“知識圖表”,它包含了所有在專業Vue開發過程中的關鍵部分。您可以參考這個圖為您在2019學習Vue的過程中指引方向。

0. JavaScript和Web開發基礎

如果我讓你用英文去閱讀純英文書籍,那麼你應該先要學習英文,對嗎?

同樣,Vue是一個用於構建Web用戶界面的JavaScript框架。在開始使用Vue之前,您至少必須先要掌握JavaScript和Web開發的基礎知識。

 

1. Vue的基礎概念

如果您是一個Vue的萌新開發,您應該專註於Vue.js 生態系統的核心,其中包括Vue核心庫,Vue Router和Vuex。因為這些工具將會在絕大部分的Vue應用程式中應用。好的,那我們開始介紹關於Vue的一些基礎概念。

Vue核心功能

在基礎情況下,Vue將網頁和JavaScript保持同步,實現這一目標的特性是響應式數據及指令和插值等模板功能,這些都是第一天要學習的內容。

在構建你的第一個Vue應用之前,你還必須要去瞭解如何在網頁中去安裝/使用Vue,以及瞭解Vue的引用實例的生命周期。

組件

Vue的組件是可重覆使用,並相互獨立的UI元素。您需要瞭解,如何聲明組件,以及如何通過屬性和事件使組件間通信。

並且學會組合組件也同樣重要,因為這關乎著你是否能夠使用Vue構建出一個健壯、可擴展應用程式。

單頁面應用程式

單頁面應用程式(SPA)架構決定了您創建的Web頁面一樣能夠展示和多頁面網站一樣豐富的內容,且不會當用戶在點擊鏈接後重新載入整個頁面等這樣低效的行為。

一旦您將您的“頁面”創建成了一個Vue組件,您可以為每一個組件使用Vue Router,將每個請求映射到一個唯一的訪問路徑上,Vue Router是一個由Vue團隊維護的用於構建單頁面應用程式(SPA)的工具。

狀態管理

隨著項目規模越來越龐大, SPA的許多頁面上將會有越來越多的組件,管理全局狀態也將變得越發棘手,組件因為大量的屬性和事件監聽器而變得臃腫。

一種稱為“Flux”的特殊模式可將您的數據保存在穩定的中央存儲中。Vuex庫也由Vue團隊維護,可祝您在Vue.js 應用程式中實現Flux。

 

2. 生產環境中的Vue

您從第一部分獲得的所有知識都可用於構建高性能和高效的Vue應用程式,雖然是允許在你的本地伺服器上,那麼,如何確保他們能夠在實際生產環境下運行呢?

如果您要把基於Vue.js 的產品推向用戶,您還需要瞭解更多內容,以下將為您介紹。

項目腳手架

如果您需要經常構建Vue應用程式,您會發現幾乎每個項目都會提供配置、設置和開發人員工具。

Vue團隊維護了一個名為Vue CLI的工具,它可以讓您在幾分鐘內構建一個強大的Vue開發環境。

全棧 / 認證應用程式

Vue應用通常是數據驅動型的用戶界面,數據通常是由Node、Laravel、Rails、Django

或其他伺服器框架編寫的安全API作為來源。

也許數據是由傳統的REST API或GraphQL提供,再或者是Web Socket提供的實時數據。

另外你還應該熟悉通常用於將Vue集成到全堆棧配置中的設計模式,以及在Vue應用程式中保護用戶數據安全的各種註意事項。

如果您正在評估什麼後端產品是您開發Vue應用時的最好選擇,那麼這篇文章中應該有您的答案。

測試

如果您想保證您的Vue應用程式在生產環境中表現的既可維護又穩定,您需要對您的應用提供完成的測試。

在Vue應用程式中,單元測試可確保您的組件始終為給定的輸入(屬性或用戶輸入的內容)提供相同的屬除(渲染好的HTML或事件)。

Vue團隊維護著一個名為Vue Test Utils的工具,它允許您能對組件單獨的創建和執行測試過程。

優化

當您將應用程式部署到遠程伺服器後,這個應用的訪問速度和執行效率很可能不會像在開發階段表現的那樣迅速,很可能當用戶訪問時速度會很慢。

為了提升效率,我們需要優化您的Vue應用,優化的過程我們可以採用各種技術,包括服務端渲染。在服務端渲染中,Vue程式將在服務端執行,在用戶訪問時,將渲染完成的HTML呈現給用戶,從而達到提升訪問速度的目的。

當然,還包括其他優化技術,例如:非同步組件和渲染功能。

 

3. 關鍵工具

到目前為止,我們所看到的一切都來自Vue.js核心,或來自生態系統中的工具。但Vue不是孤立存在的,它只是前端技術棧中其中的一塊。

高級開發中不應該僅僅熟悉Vue,還要熟悉一些其他關鍵工具,因為它可能將成為未來Vue應用其中的一部分。

現代JavaScript和Babel

ES5可以有效構建Vue應用程式,ES5幾乎是所有瀏覽器都支持的JavaScript標準。

為了增強Vue的開發體驗,並使用最新的瀏覽器功能,您可以使用最新的JavaScript

標準ES2015的特性或ES2016及更高版本的建議功能來構建您的Vue應用程式。

如果選擇使用了最新的JavaScript特性,那麼其中舊版瀏覽器將會出現相容問題,這會造成您的產品將會損失掉一部分用戶。

而如何對舊瀏覽器做相容呢? Babel 可以實現這個目的,它的職責就是在應用程式發佈前將您應用程式中現代特性“轉換”(翻譯和編譯)為標準功能。

Webpack

Webpack是一個模塊打包工具,意思是如果您的代碼跨不同模塊編寫的(例如,不同的JavaScript文件),Webpack也可以全部將這些內容“構建”到一個瀏覽器可讀的單個文件中。

Webpack 還可以構建流水線,它允許您在構建代碼前進行轉換。例如,使用前面鐵道的Babel,Sass或TypeScript,還可以使用一系列插件來優化您的應用程式。

許多開發者認為Webpack很難理解,也很難配置,但如果沒有它,Vue的一些最棒的功能(如:單頁面組件)將無法實現。我們有關於WebPack的系列教程,助您快速掌握Webpack的使用和配置。

TypeScript

TypeScript是JavaScript語言的超集,它包含了(String,Boolean,Number等)。有了這樣的類型定義,能保證您在開發期間就能編寫出健壯和穩定的代碼,能儘早發現錯誤。

即將於2019年推出的Vue.js 3將完全用TypeScript開發,這並不意味著您必須在Vue項目中使用它。但假如您需要通過閱讀Vue的內部代碼並加入Vue的開源組織為其貢獻力量,您至少也是應該要瞭解TypeScript這個語言的。

 

4. Vue框架

基於Vue創建的框架,使您無需從頭開始實現服務端渲染,創建自己的組件庫以及其他類似的工作。

目前有許多優秀的Vue框架,但在這,我們只列出了應用在不同領域最為廣泛的三個框架。

Nuxt.js

如果你想要構建一個高性能的Vue應用程式,同時還要基於路由、服務端呈現、代碼分離和其他前沿特性,同時還需要一些更高級的功能,例如:SEO標記等。您可以使用Nuxt.js框架。

Nuxt.js框架通過其豐富的社區插件提供了所有這些開箱即用的特性,以及更多的特性,如PWA等。

Vuetify

Google的Material Design標準是一個廣泛使用的設計語言指南系統,它用於構建漂亮併合理的用戶界面,這些界面被廣泛應用於Google的產品,如Android和Web系統。

Vuetify框架在一系列Vue組件中實現了Material Design。這允許您使用Material Design佈局和樣式快速創建Vue應用程式,併在應用程式中實現模態框、提示框、導航欄、分頁等頁面小控制項。

NativeScript-Vue

Vue.js 是一個用於構建Web用戶界面的庫。如果您想將他用於構建移動應用,您可以使用NativeScript-Vue框架。

NativeScript是一個使用iOS和Android上原生用戶界面組件構建應用app的框架,而NativeScript-Vues 是基於NativeScript且支持Vue語法和Vue組件使用的框架。

 

5. 其他

在最後一部分中,我們將介紹一些重要但不包含在上述分類中的內容。

插件開發

如果您要在項目中重用Vue功能,或為Vue生態做出貢獻,您可以把這部分功能打包成插件併發布給其他用戶。

插件功能是Vue的一個重要特性,有很多工具和模板可以幫助您創建輕便高效的Vue代碼。

動畫

動畫也是 Vue核心功能的一部分,它允許您在向DOM中添加或刪除元素時應用動畫。 為了啟用一個動畫,您可以創建CSS類來定義所需的動畫效果,無論是淡入淡出、更改顏色還是任何其他效果。Vue將檢測當添加元素和刪除元素時,添加或刪除您設置相應的類。

漸進式Web應用程式

漸進式Web應用程式(PWA)與普通的Web應用程式類似,但用戶體驗、性能已經得到了增強,同時還增加了現代功能,例如,PWA包括離線緩存、服務端渲染、通知推送等。

大部分PWA功能可以通過Vue CLI 3插件或主入Nuxt.js之類的框架輕鬆添加到Vue應用中,但您最好仍然需要去學習其中的關鍵技術,包括Web應用json清單(minifest)和服務等技術。

擴展控制項

您的應用中如包含有電子錶格、報表、數據分析、金融圖表、線上表格編輯器等需求。可以嘗試使用葡萄城的SpreadJS純前端表格控制項WijmoJS純前端開發工具包,這兩款控制項工具都完美相容Vue,可使您的應用為用戶帶來更穩定、更高效的使用體驗。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 用法 先來看看官網的介紹: 簡單的說,當組件的引入層次過多,我們的子孫組件想要獲取祖先組件的資源,那麼怎麼辦呢,總不能一直取父級往上吧,而且這樣代碼結構容易混亂。這個就是這對選項要乾的事情 provide和inject需要配合使用,它們的含義如下: provide ;一個對象或返回一個對象的函數,該 ...
  • nodejs伺服器時候遇到了這樣一個bug,就是mongoose模糊查詢時候,我需要查詢的數據時自定義id_(number類型)以及用戶名(string類型)。 ...
  • HTTP + 加密 + 認證 + 完整性保護 = HTTPS http的全稱是Hypertext Transfer Protocol Vertion (超文本傳輸協議) HTTPS: HTTPS(Secure Hypertext Transfer Protocol)安全超文本傳輸協議。 HTTPS和 ...
  • 螞蟻金服數據可視化團隊曾經開源了一款 G6-Editor,但後來停止了對外支持,學習成本太高 好在後來他們團隊的大牛高力結合 React + G6 開源了一個 GG-Editor(其實就是G6-Editor) 不過相關的文檔還是太少,實際的使用依然是一個不斷摸索的過程... 常見問題: https ...
  • 舉例如下: http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument 協議(Protocol) http://為協議名,標明瞭請求需要使用的協議,通常使用的是HTTP協議或 ...
  • 在過去的幾年中,jQuery一直是使用最為廣泛的JavaScript腳本庫。今天我們將為各位Web開發者提供10個最實用的jQuery代碼片段,有需要的開發者可以保存起來。 1、檢測Internet Explorer版本當涉及到CSS設計時,對開發者和設計者而言Internet Explorer一直 ...
  • 寫在前面 由於本文主要集中關註與工具使用,所以不可能完全介紹工具的所有功能,所以要想瞭解更多,可以自己去各自官方網站上查看。 "github" "examples" 什麼是UI開發環境 UI開發環境專註於用戶體驗設計師與開發人員之間的協作(UI dev environments),為UI組件的快速迭 ...
  • 轉自:http://www.inbeijing.org/archives/1139 css控制Button 按鈕的點擊時候出現藍色邊框的問題 添加css屬性,這樣在點擊安按鈕的時候就不會有藍色邊框了。 button{ outline:none; } ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...