亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

簡單說說如何使用vue-router插件的方法

 更新時間:2019年04月08日 15:01:17   作者:deniro  
這篇文章主要介紹了如何使用vue-router插件的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1 安裝

首先,通過 npm 安裝 vue-router 插件:

npm install --save vue-router

安裝的插件版本是:vue-router@3.0.2

2 用法

2.1 新建 vue 組件

在 router 目錄中,新建  views 目錄,然后新建兩個 vue 組件(一個頁面就對應(yīng)一個組件)。

index.vue:

<template>
  <div>首頁</div>
</template>

<script>
  export default {
    name: "index.vue"
  }
</script>

<style scoped>

</style>

about.vue:

<template>
  <div>關(guān)于我們</div>
</template>

<script>
  export default {
    name: "about"
  }
</script>

<style scoped>

</style>

2.2 修改 main.js

// 引入 Vue 框架
import Vue from 'vue'
import VueRouter from 'vue-router';
//引入 hello.vue 組件
import Hello from './hello.vue'

//加載 vue-router 插件
Vue.use(VueRouter);

/*定義路由匹配表*/
const Routers = [{
  path: '/index',
  component: (resolve) => require(['./router/views/index.vue'], resolve)
},
  {
    path: '/about',
    component: (resolve) => require(['./router/views/about.vue'], resolve)
  }]

//路由配置
const RouterConfig = {
  //使用 HTML5 的 History 路由模式
  mode: 'history',
  routes: Routers
};
//路由實例
const router = new VueRouter(RouterConfig);

 

new Vue({
  el: '#app',
  router: router,
  render: h => h(Hello)
})

步驟如下:

  1. 加載 vue-router 插件。
  2. 定義路由匹配表,每個路由映射到一個組件。
  3. 配置路由。
  4. 新建路由實例。
  5. 在 Vue 實例中引用路由實例。

Routers 中的每一項,都有以下這些屬性:

屬性 說明
path 匹配路徑
component 需要映射的組件

webpack 把每一個路由都打包成一個 js 文件。只有在請求該頁面時,才會加載這個 js 文件,即按需加載。

如果需要一次性加載,那么可以這樣配置:

{
    path: '/index',
    component: require('./router/views/index.vue')
}

配置了異步路由之后,編譯出的頁面 js 被稱為 chunk,它們默認(rèn)的命名格式為 0.main.js、1.main.js 等等。

可以在 webpack.config.js 中配置這個 chunk 的命名格式:

 output: {
    ...
    //chunk 文件名
    chunkFilename:'[name].chunk.js'
  }

刷新頁面之后,就會在調(diào)試模式看到 chunk 名稱已經(jīng)被改變咯:

 

在 RouterConfig 中,我們使用了  HTML5 的 History 路由模式,即通過 "/" 來設(shè)置路徑。如果不配置 mode,RouterConfig 默認(rèn)是使用 “#” (錨點)來匹配路徑。

注意: 生產(chǎn)環(huán)境中,服務(wù)端必須將所有路由都指向同一個 HTML,或設(shè)置 404 頁面為這個 HTML 頁面,否則刷新頁面就會出現(xiàn) 404 錯誤。

2.3 配置 chunk 樣式

使用了 chunk 之后,每個 *.vue 文件中所定義的樣式,默認(rèn)通過 Javascript 來動態(tài)創(chuàng)建 <style> 標(biāo)簽來寫入樣式。我們可以通過配置,把這些文件中的樣式都統(tǒng)一寫入 main.css,修改 webpack.config.js :

 plugins: [//插件
    new ExtractTextPlugin({
      filename: '[name].css',
      allChunks: true
    }),
   ...
  ]

2.4 配置 History 路由指令

在 package.json 中,修改 dev 指令:

"dev": "webpack-dev-server --open --history-api-fallback --config webpack.config.js",

2.5 掛載路由組件

在根實例,掛載路由組件:

<template>
  <div>
    <router-view></router-view>
  </div>
</template>

運(yùn)行時,<router-view> 會根據(jù)當(dāng)前所配置的路由規(guī)則,渲染出不同的頁面組件。主界面中的公共部分,比如側(cè)邊欄、導(dǎo)航欄以及底部版權(quán)信息欄,可以直接定義在根目錄,與<router-view> 同級。這樣,當(dāng)切換路由時,切換的只是<router-view> 掛載的組件,其它內(nèi)容不會變化。

2.6 運(yùn)行

執(zhí)行 npm run dev 之后,在瀏覽器地址欄輸入不同的 URL ,就會看到掛載的不同組件信息。
http://localhost:8080/index:

http://localhost:8080/about

 

2.7 重定向

我們可以在路由配置表中,配置一項功能,當(dāng)訪問的頁面不存在時,重定向到首頁:

const Routers = [
...
  {//當(dāng)訪問的頁面不存在時,重定向到首頁
    path: '*',
    redirect: '/index'
  }
]

這樣,即使只訪問 http://localhost:8080/,也會自動跳轉(zhuǎn)到首頁啦 O(∩_∩)O~

2.8 帶參數(shù)的路由

路由 path 可以帶參數(shù)。比如文章 URL,路由的前半部分是固定的,后半部分是動態(tài)參數(shù),形如:/article/xxx。它們會被路由到同一個頁面,在該頁面可以獲取 xxx 參數(shù),然后根據(jù)這個參數(shù)來請求數(shù)據(jù)。

首先在 main.js 中配置帶參數(shù)的路由規(guī)則:

const Routers = [{
 ...
  {
    path: '/article/:id',
    component: (resolve) => require(['./router/views/article.vue'], resolve)
  }
  ...
]

然后在 router/views 下新建一個 article.vue :

<template>
  <div>{{$route.params.id}}</div>
</template>

<script>
  export default {
    name: "article",
    mounted() {
      console.log(this.$route.params.id);
    }
  }
</script>

<style scoped>

</style>

運(yùn)行 npm run dev 后,在瀏覽器地址欄中輸入 http://localhost:8080/article/123,就能訪問到 article.vue 組件咯:

 

注意: 因為配置的參數(shù)路由規(guī)則是 /article/:id,即必須帶 id 參數(shù),否則是會重定向會 /index 的哦O(∩_∩)O~

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue滾動頁面到指定位置的實現(xiàn)及避坑

    Vue滾動頁面到指定位置的實現(xiàn)及避坑

    這篇文章主要介紹了Vue滾動頁面到指定位置的實現(xiàn)及避坑,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Vue向下滾動加載更多數(shù)據(jù)scroll案例詳解

    Vue向下滾動加載更多數(shù)據(jù)scroll案例詳解

    這篇文章主要介紹了Vue向下滾動加載更多數(shù)據(jù)scroll案例詳解,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • Vue-Router基礎(chǔ)學(xué)習(xí)筆記(小結(jié))

    Vue-Router基礎(chǔ)學(xué)習(xí)筆記(小結(jié))

    這篇文章主要介紹了Vue-Router基礎(chǔ)學(xué)習(xí)筆記(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-10-10
  • vue關(guān)于接口請求數(shù)據(jù)過大導(dǎo)致瀏覽器崩潰的問題

    vue關(guān)于接口請求數(shù)據(jù)過大導(dǎo)致瀏覽器崩潰的問題

    這篇文章主要介紹了vue關(guān)于接口請求數(shù)據(jù)過大導(dǎo)致瀏覽器崩潰的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Vue和Flask通信的實現(xiàn)

    Vue和Flask通信的實現(xiàn)

    最近新做了個項目,前端使用的是目前很流行的前端框架,對于后端,本項目選擇的是比較好上手、輕量級的python后臺框架:Flask。感興趣的可以了解一下
    2021-05-05
  • Vue關(guān)閉當(dāng)前彈窗頁面的兩種方式

    Vue關(guān)閉當(dāng)前彈窗頁面的兩種方式

    這篇文章主要給大家介紹了關(guān)于Vue關(guān)閉當(dāng)前彈窗頁面的兩種方式,這是最近項目中遇到的一個需求,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07
  • vue-resource請求實現(xiàn)http登錄攔截或者路由攔截的方法

    vue-resource請求實現(xiàn)http登錄攔截或者路由攔截的方法

    這篇文章主要介紹了vue-resource請求實現(xiàn)http登錄攔截或者路由攔截的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • Vue獲取頁面元素的相對位置的方法示例

    Vue獲取頁面元素的相對位置的方法示例

    這篇文章主要介紹了Vue獲取頁面元素的相對位置的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • vue.set() (this.$set)的用法及說明

    vue.set() (this.$set)的用法及說明

    這篇文章主要介紹了vue.set() (this.$set)的用法及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Vue快速實現(xiàn)通用表單驗證的示例代碼

    Vue快速實現(xiàn)通用表單驗證的示例代碼

    這篇文章主要介紹了Vue快速實現(xiàn)通用表單驗證的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01

最新評論