摘要:提供了兩種向組件傳遞參數(shù)的方式。子路由項(xiàng)路徑不要使用開頭,以開頭的嵌套路徑會(huì)被當(dāng)作根路徑。路由實(shí)例的方法這里學(xué)習(xí)兩個(gè)路由實(shí)例的方法和。實(shí)際上,是通過不同的將這些資源加載后打包,然后輸出打包后文件。
一、vue-router 1、簡介
我們經(jīng)常使用vue開發(fā)單頁面應(yīng)用程序(SPA)。在開發(fā)SPA過程中,路由是必不可少的部分,vue的官方推薦是vue-router。單頁面應(yīng)用程序看起來好像是一個(gè)頁面,其實(shí)是在一個(gè)頁面中切換不同的html部分,從而達(dá)到所謂的單頁面,在這切換之中,就需要使用路由來實(shí)現(xiàn)不同的頁面內(nèi)容的展現(xiàn)。
2、基本用法 (1).使用步驟vue-router的基本使用步驟如下:
定義需要切換的組件
配置路由,規(guī)定路徑到組件的映射關(guān)系
創(chuàng)建路由實(shí)例
將路由掛載到vue實(shí)例
//1.定義組件,用于路由切換 var Home = { template: "我是主頁" } var News = { template: "我是新聞" } //2.配置路由 const routes = [{ path: "/home", component: Home },{ path: "/news", component: News },{ //這一路由配置用于首次訪問或者找不到所請求路由,自動(dòng)跳轉(zhuǎn)home頁 path: "*", redirect: "/home" }]; //3.創(chuàng)建路由實(shí)例 var router = new VueRouter({ routes //傳入配置好的路由信息 }); //4.掛載路由到根組件 new Vue({ el: "#app", router });
這樣我們就配置好了一個(gè)完整的路由。在切換組件的時(shí)候會(huì)根據(jù)路由加載不同的組件。我們使用類似a標(biāo)簽的
主頁 新聞
這樣我們就可以實(shí)現(xiàn)主頁和新聞組件間的切換。
(2).參數(shù)傳遞可能我們需要向所切換組件傳遞參數(shù)。vue提供了兩種向組件傳遞參數(shù)的方式。
查詢字符串的形式
/home?name=dawei&pwd=666
在組件內(nèi)部使用{{$route.query}}接收參數(shù)
rest風(fēng)格
/news/param1/param2
在組件內(nèi)部使用{{$route.params}}接收參數(shù)
(3).路由嵌套路由還可以多層嵌套使用,使用children屬性。
{ path:"/user", component:User, children:[ { path:"login", component:Login }, { path:"regist", component:Regist } ] }
子路由項(xiàng)路徑不要使用/開頭,以 / 開頭的嵌套路徑會(huì)被當(dāng)作根路徑。
在組件中就可以使用該路由:
用戶信息
用戶登陸 用戶注冊
注意路徑的寫法。
3、路由實(shí)例的方法這里學(xué)習(xí)兩個(gè)路由實(shí)例的方法:router.push()和router.replace()。
router.push():添加路由,功能上與
router.replace(): 替換路由,不產(chǎn)生歷史記錄
router.push({path:"home"}) router.replace({path:"user"})4、路由結(jié)合動(dòng)畫
路由結(jié)合動(dòng)畫使用很簡單,我們可以用
二、單文件組件 1、.vue文件
.vue文件稱為單文件組件,是Vue.js自定義的一種文件格式,一個(gè).vue文件就是一個(gè)多帶帶的組件,在文件內(nèi)封裝了組件相關(guān)的代碼:html、css、js代碼。
.vue文件由三部分組成:、、:
//html2、vue-loader
瀏覽器本身并不認(rèn)識(shí).vue文件,此時(shí)需要vue-loader對.vue文件進(jìn)行加載解析,。類似的loader還有許多,如:html-loader、css-loader、style-loader、babel-loader等。需要注意的是vue-loader是基于webpack的。
3、webpackwebpack是一個(gè)前端資源模板化加載器和打包工具,它能夠把各種資源都作為模塊來使用和處理。實(shí)際上,webpack是通過不同的loader將這些資源加載后打包,然后輸出打包后文件。簡單來說,webpack就是一個(gè)模塊加載器,所有資源都可以作為模塊來加載,最后打包輸出。
三、vue-cli 1. 簡介vue-cli是一個(gè)vue腳手架,可以幫助我們快速構(gòu)造項(xiàng)目結(jié)構(gòu),減少開發(fā)人員開發(fā)阻力。vue-cli集成了多種版本:
simple :比較簡單
webpack :包含ESLint代碼規(guī)范檢查和unit單元測試等
webpack-simple: 沒有代碼規(guī)范檢查和單元測試
browserify: 使用的也比較多
browserify-simple
2.安裝、操作步驟//安裝vue-cli,配置vue命令環(huán)境 cnpm install vue-cli -g vue --version vue list // 初始化項(xiàng)目,生成項(xiàng)目模板 vue init 模板名 項(xiàng)目名 //進(jìn)入生成的項(xiàng)目目錄,安裝模塊包 cd vue-cli-demo cnpm install //運(yùn)行 npm run dev //啟動(dòng)測試服務(wù) npm run build //將項(xiàng)目打包輸出dist目錄,項(xiàng)目上線的話要將dist目錄拷貝到服務(wù)器上3.文件介紹
. |-- build // 項(xiàng)目構(gòu)建(webpack)相關(guān)代碼 | |-- build.js // 生產(chǎn)環(huán)境構(gòu)建代碼 | |-- check-version.js // 檢查node、npm等版本 | |-- dev-client.js // 熱重載相關(guān) | |-- dev-server.js // 構(gòu)建本地服務(wù)器 | |-- utils.js // 構(gòu)建工具相關(guān) | |-- webpack.base.conf.js // webpack基礎(chǔ)配置 | |-- webpack.dev.conf.js // webpack開發(fā)環(huán)境配置 | |-- webpack.prod.conf.js // webpack生產(chǎn)環(huán)境配置 |-- config // 項(xiàng)目開發(fā)環(huán)境配置 | |-- dev.env.js // 開發(fā)環(huán)境變量 | |-- index.js // 項(xiàng)目一些配置變量 | |-- prod.env.js // 生產(chǎn)環(huán)境變量 | |-- test.env.js // 測試環(huán)境變量 |-- src // 源碼目錄 | |-- components // vue組件 | |-- store // 狀態(tài)管理 | |-- App.vue // 頁面入口vue文件 | |-- main.js // 程序入口文件,加載各種公共組件 |-- static // 靜態(tài)文件 | |-- data |-- .babelrc // ES6語法編譯配置 |-- .editorconfig // 定義代碼格式 |-- .gitignore // git上傳需要忽略的文件格式 |-- README.md // 項(xiàng)目說明 |-- favicon.ico //網(wǎng)頁圖標(biāo) |-- index.html // 入口頁面 |-- package.json // 項(xiàng)目配置信息 .
此列表拷貝自:https://segmentfault.com/a/11...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/89335.html
摘要:提供了兩種向組件傳遞參數(shù)的方式。子路由項(xiàng)路徑不要使用開頭,以開頭的嵌套路徑會(huì)被當(dāng)作根路徑。路由實(shí)例的方法這里學(xué)習(xí)兩個(gè)路由實(shí)例的方法和。實(shí)際上,是通過不同的將這些資源加載后打包,然后輸出打包后文件。 一、vue-router 1、簡介 我們經(jīng)常使用vue開發(fā)單頁面應(yīng)用程序(SPA)。在開發(fā)SPA過程中,路由是必不可少的部分,vue的官方推薦是vue-router。單頁面應(yīng)用程序看起來好像...
摘要:當(dāng)組件給其他人使用時(shí)這很有用,因?yàn)檫@些驗(yàn)證要求構(gòu)成了組件的,確保其他人正確地使用組件。有特性的稱為命名。例如,假定我們有一個(gè)組件,它的模板為父組件模板渲染結(jié)果為 一、注冊 // 定義 var MyComponent = Vue.extend({ template: A custom component! }); // 注冊 Vue.component(my-component, ...
摘要:各模塊各司其職,提高開發(fā)效率。使用生成的項(xiàng)目目錄里,我們主要關(guān)注目錄。這個(gè)是我們之前提到的單頁面組件。這是項(xiàng)目的路由文件,存放項(xiàng)目中所有的路由。這里和我們之前所學(xué)沒什么不同,不過是涉及了不少的知識(shí)。 一、vue模塊化開發(fā) 所謂的模塊化開發(fā)是指將不同的部分封裝到不同的模塊中,不再將所有的組件、路由等寫在一個(gè)頁面中。各模塊各司其職,提高開發(fā)效率。 使用vue-cli生成的項(xiàng)目目錄里,我們主...
摘要:各模塊各司其職,提高開發(fā)效率。使用生成的項(xiàng)目目錄里,我們主要關(guān)注目錄。這個(gè)是我們之前提到的單頁面組件。這是項(xiàng)目的路由文件,存放項(xiàng)目中所有的路由。這里和我們之前所學(xué)沒什么不同,不過是涉及了不少的知識(shí)。 一、vue模塊化開發(fā) 所謂的模塊化開發(fā)是指將不同的部分封裝到不同的模塊中,不再將所有的組件、路由等寫在一個(gè)頁面中。各模塊各司其職,提高開發(fā)效率。 使用vue-cli生成的項(xiàng)目目錄里,我們主...
閱讀 1733·2021-10-18 13:30
閱讀 2608·2021-10-09 10:02
閱讀 2964·2021-09-28 09:35
閱讀 2091·2019-08-26 13:39
閱讀 3521·2019-08-26 13:36
閱讀 1950·2019-08-26 11:46
閱讀 1135·2019-08-23 14:56
閱讀 1693·2019-08-23 10:38