首頁 web前端 Vue.js vue.js全家桶包含哪些

vue.js全家桶包含哪些

Nov 10, 2020 am 11:57 AM
vue.js 全家桶

vue.js全家桶包有:1、【vue vuex】狀態管理;2、【vue-router】路由;3、【vue-resource】;4、axios;5、UI框架。

vue.js全家桶包含哪些

【相關文章推薦:vue.js

vue.js全家桶套件有:

vue全家桶:vue vuex (狀態管理) vue-router (路由) vue-resource axios UI框架(iview、vant、elementUI等等)

Vue有著名的全桶系列,包含了vue-router(http://router.vuejs.org),vuex(http://vuex.vuejs.org), vue-resource(https://github.com/pagekit /vue-resource)。再加上建構工具vue-cli,sass樣式,就是一個完整的vue專案的核心構成。

概括起來就是:、1.專案建置工具、2.路由、3.狀態管理、4.http請求工具。

以下單獨介紹

前言:Vue兩大核心思想:組件化與資料驅動。組件化:把整體拆分為各個可以重複使用的個體,數據驅動:透過數據變化直接影響bom展示,避免dom操作。

一、Vue-cli是快速建立這個單頁應用的鷹架,

# 全局安装 vue-cli
$ npm install --global vue-cli
# 创建一个基于 webpack 模板的新项目
$ vue init webpack my-project
# 安装依赖,走你
$ cd my-project
$ npm install
$ npm run dev
登入後複製

二、vue-router

#安裝:npm installvue-router

如果在一個模組化工程中使用它,必須要透過Vue.use() 明確地安裝路由功能:

import Vue from'vue'
import VueRouter from'vue-router'
Vue.use(VueRouter)
登入後複製

另外注意在使用中,可以利用vue的過渡屬性來渲染出切換頁面的效果。

三、vuex

vuex為專為vue.js應用程式開發的狀態管理可以理解為全域的資料管理。 vuex主要由五個部分組成:state action、mutation、getters、mudle組成。

使用流程是: 元件中可以直接呼叫上面四個部分除了mudle,

1、state

類似vue 物件的data, 用來存放資料以及狀態。存放的資料為響應式,如果資料改變,那麼依賴資料的元件也會發生對應的改變。

取得state的兩種方式範例:

第一種:

store.getters['getRateUserInfo']
登入後複製

第二種:

...mapGetters({
        UserInfo: 'login/UserInfo', // 用户信息
        menuList: 'getMenuList', // approve 运价审批
        RateUserInfo: 'getRateUserInfo' // Rate用户信息
   })
登入後複製

注意:可以透過mapState把全域的state和getters 對應到目前元件的computed計算屬性。

2、actions

Action 透過store.dispatch 方法觸發:action支援非同步呼叫(可以呼叫api),mutation只支援操作同步,而action提交的是mutation,而不是直接變更狀態。

例如:

const store = new Vuex.Store({
  state: {
    count: 0
  },
  mutations: {
    increment (state) {
      state.count++
    }
  },
  actions: {
    increment (context) {
      context.commit('increment')
    }
  }
})
登入後複製

Action 函數接受一個與store 實例具有相同方法和屬性的context 對象,因此你可以呼叫context.commit 提交一個mutation,或透過context.state 和context. getters 來取得state 和getters。

實務中,我們會常用到ES2015 的參數解構來簡化程式碼(特別是我們需要呼叫commit 很多次的時候):

actions:{
  increment ({ commit }){
    commit('increment')
  }
}
登入後複製

3、mutation

#每個mutation 都有一個字串的事件類型(type) 和一個回呼函數(handler)。這個回呼函數就是我們實際進行狀態變更的地方,它會接受 state 作為第一個參數。

4、getters

Vuex 允許我們在 store 中定義「getter」(可以認為是 store 的計算屬性)。就像計算屬性一樣,getter 的回傳值會根據它的依賴被快取起來,且只有當它的依賴值發生了改變才會被重新計算

const getters = {
  getRateInitData: state => state.rateInitData,
  getchooseRateObj: state => state.chooseRateObj,
  getSearchRateParams: state => state.searchRateParams,
  getSearchRateResult: state => state.searchRateResult,
  getRateUserInfo: state => state.RateUserInfo,
  getMenuList: state => state.menuList,
  getRateQueryParams: state => state.rateQueryParams,
  getRateQueryResult: state => state.rateQueryResult,
  getCheckRateDetailParams: state => state.checkRateDetailParams,
  getReferenceCondition: state => state.referenceCondition,
  getWaitApprovalParams: state => state.waitApprovalParams
}
登入後複製

mapGetters 輔助函數

# mapGetters 輔助函數只是將store 中的getter 映射到局部計算屬性。

四、axios

axios是http請求包,vue官網推薦使用axios進行http呼叫。

安裝:

npm install axios --save

#範例:

1.發送一個GET請求

//通过给定的ID来发送请求
axios.get('/user?ID=12345')
  .then(function(response){
    console.log(response);
  })
  .catch(function(err){
    console.log(err);
  });
//以上请求也可以通过这种方式来发送
axios.get('/user',{
  params:{
    ID:12345
  }
})
.then(function(response){
  console.log(response);
})
.catch(function(err){
  console.log(err);
});
登入後複製

2、發送一個POST請求

axios.post('/user',{
  firstName:'Fred',
  lastName:'Flintstone'
})
.then(function(res){
  console.log(res);
})
.catch(function(err){
  console.log(err);
});
登入後複製

五、搭配UI框架如:iview、vant、elementUI

iview 一套基於Vue的高品質UI 元件庫(分為小程序和pc端等不同版本);

vant 輕量、可靠的行動端Vue 元件庫,是有讚開源的一套基於Vue 2.0 的Mobile 元件庫,旨在更快、更簡單地開發基於Vue 的美觀易用的行動網站。

Ant Design Vue 是 Ant Design 的 Vue 實現,開發和服務企業級後台產品。

elementUI 是基於 Vue 2.0 桌面端中後台元件庫。

相關免費學習推薦:JavaScript(影片)

#

以上是vue.js全家桶包含哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

深入探討vite是怎麼解析.env檔的 深入探討vite是怎麼解析.env檔的 Jan 24, 2023 am 05:30 AM

使用vue框架開發前端專案時,我們部署的時候都會部署多套環境,往往開發、測試以及線上環境呼叫的介面網域都是不一樣的。如何能做到區分呢?那就是使用環境變數和模式。

圖文詳解如何在Vue專案中整合Ace程式碼編輯器 圖文詳解如何在Vue專案中整合Ace程式碼編輯器 Apr 24, 2023 am 10:52 AM

Ace 是一個用 JavaScript 寫的可嵌入程式碼編輯器。它與 Sublime、Vim 和 TextMate 等原生編輯器的功能和效能相符。它可以很容易地嵌入到任何網頁和 JavaScript 應用程式中。 Ace 被維護為Cloud9 IDE的主要編輯器 ,並且是 Mozilla Skywriter (Bespin) 專案的繼承者。

vue中組件化和模組化有什麼區別 vue中組件化和模組化有什麼區別 Dec 15, 2022 pm 12:54 PM

組件化和模組化的區別:模組化是從程式碼邏輯的角度進行劃分的;方便程式碼分層開發,確保每個每個功能模組的職能一致。元件化是從UI介面的角度進行規劃;前端的元件化,方便UI元件的重複使用。

探討如何在Vue3中撰寫單元測試 探討如何在Vue3中撰寫單元測試 Apr 25, 2023 pm 07:41 PM

在當今前端開發中,Vue.js 已經成為了一個非常流行的框架。隨著 Vue.js 的不斷發展,單元測試變得越來越重要。今天,我們將探討如何在 Vue.js 3 中編寫單元測試,並提供一些最佳實踐和常見的問題及解決方案。

深入聊聊vue3中的reactive() 深入聊聊vue3中的reactive() Jan 06, 2023 pm 09:21 PM

前言:在vue3的開發中,reactive是提供實現響應式資料的方法。日常開發這個是使用頻率很高的api。這篇文章筆者就來探索其內部運作機制。

Vue中JSX語法和模板語法的簡單比較(優劣勢分析) Vue中JSX語法和模板語法的簡單比較(優劣勢分析) Mar 23, 2023 pm 07:53 PM

在Vue.js中,開發人員可以使用兩種不同的語法來建立使用者介面:JSX語法和範本語法。這兩種文法各有優劣,以下就來探討它們的差異和優劣勢。

怎麼查詢目前vue的版本 怎麼查詢目前vue的版本 Dec 19, 2022 pm 04:55 PM

查詢目前vue版本的兩種方法:1、在cmd控制台內,執行「npm list vue」指令查詢版本,輸出結果就是vue的版本號資訊;2、在專案中找到並開啟package.json文件,查找「dependencies」項目即可看到vue的版本資訊。

淺析Vue3動態組件怎麼進行異常處理 淺析Vue3動態組件怎麼進行異常處理 Dec 02, 2022 pm 09:11 PM

Vue3動態元件怎麼進行異常處理?以下這篇文章帶大家聊聊Vue3 動態元件異常處理的方法,希望對大家有幫助!

See all articles