欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue2路由基本用法實例分析

 更新時間:2020年03月06日 11:07:23   作者:程序媛-jjl  
這篇文章主要介紹了vue2路由基本用法,結(jié)合實例形式分析了vue2路由基本功能、原理、用法與操作注意事項,需要的朋友可以參考下

本文實例講述了vue2路由基本用法。分享給大家供大家參考,具體如下:

Vue-router 是給Vue.js 提供路由管理的插件,利用hash 的變化控制動態(tài)組件的切換。以往頁面間跳轉(zhuǎn)都由后端MVC 中Controller 層控制,通過<a> 標(biāo)簽的href 或者直接修改location.href,我們會向服務(wù)端發(fā)起一個請求,服務(wù)端響應(yīng)后根據(jù)所接收到的信息去獲取數(shù)據(jù)和指派對應(yīng)的模板,渲染成HTML 再返回給瀏覽器,解析成我們可見的頁面。Vue.js +Vue-router 的組合將這一套邏輯放在了前端去執(zhí)行,切換到對應(yīng)的組件后再向后端請求數(shù)據(jù),填充進(jìn)模板來,在瀏覽器端完成HTML 的渲染。這樣也有助于前后端分離,前端不用依賴于后端的邏輯,只需要后端提供數(shù)據(jù)接口即可。

引用方式:

在HTML 中直接用script 標(biāo)簽引入即可,例如:

<script src="<%=request.getContextPath()%>/lib/vue-router.js"></script>

注意:vue的引入要放在vue-router的之前,不然vue-router會不起作用。

基本用法:

本文章將結(jié)合boostrap中的樣式來做案例,實現(xiàn)導(dǎo)航條,點擊實現(xiàn)不同的頁面。

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>routerTest1</title>
  <c:import url="importFile.jsp"></c:import>
</head>
<body>
<div id="app">
  <nav class="navbar navbar-inverse">
    <div class="container-fluid">
      <div class="navbar-header">
        <a class="navbar-brand" href="#" rel="external nofollow" >Brand</a>
      </div>
      <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
        <ul class="nav navbar-nav">
          <%--定義跳轉(zhuǎn)的路徑--%>
          <li class="active"> <router-link to="/home">Home</router-link></li>
          <li> <router-link to="/list">List</router-link></li>
        </ul>
      </div>
    </div>
  </nav>
  <div class="container">
    <!—路由切換組件template 插入的位置 -->
    <router-view></router-view>
  </div>
</div>

<script type="x-template" id="modalTel">
  <div>
    <h1> this is home page </h1>

  </div>

</script>
<script>

  /*
   * var Home = Vue.extend({
   template:'<h1> this is home page </h1>',
   })
   * */
  /*使用Javascrip 模板創(chuàng)建組件*/
  var Home = Vue.extend({
    template:'#modalTel'
  })

  /*創(chuàng)建路由器實例*/
  const router = new VueRouter({
    routes:[
        /*默認(rèn)時的路徑*/
      { path: '/', redirect: '/home' },
      {
        path:'/home',
        component:Home,

      },
      {
        path:'/list',
        component:{
          /*顯示一些路由的屬性*/
          template:'<h1> this is list page----{{$route.path}}</h1>'
        }
      }
    ]
  });
  const app = new Vue({
    router:router
  }).$mount('#app')
</script>
</body>
</html>

importFile.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>框架文件</title>
  <link href="<%=request.getContextPath()%>/frame/bootstrap-3.1.1/css/bootstrap.css" rel="external nofollow" rel="stylesheet">
  <script src="https://cdn.bootcss.com/vue/2.2.2/vue.min.js"></script>
  <script src="<%=request.getContextPath()%>/lib/vue-router.js"></script>
  <script src="<%=request.getContextPath()%>/lib/jquery.min.js"></script>
  <script src="<%=request.getContextPath()%>/frame/bootstrap-3.1.1/js/bootstrap.min.js"></script>

 
</head>
<body>

</body>
</html>

這樣整個運(yùn)行成功了。

 

這樣,簡單的路由實例就完成了。

路由對象:

在使用Vue-router 啟動應(yīng)用時,每個匹配的組件實例中都會被注入router 的對象,稱之為路由對象。在組件內(nèi)部可以通過this.$route 的方式進(jìn)行調(diào)用。

路由對象總共包含了以下幾個屬性:

1.$route.path

類型為字符串,為當(dāng)前路由的絕對路徑,如/list/1。

2.$route.params

類型為對象。包含路由中動態(tài)片段和全匹配片段的鍵值對。如上述例子中的/list/:page路徑,就可以通過this.$route.params.page 的方式來獲取路徑上page 的值。

3.$route.query

類型為對象。包含路由中查詢參數(shù)的鍵值對。例如/list/1?sort=createTime, 通過this.$route.query.sort 即可得到createTime。

4.$route.router

即路由實例,可以通過調(diào)用其go,replace 方法進(jìn)行跳轉(zhuǎn)。我們在組件實例中也可以直接調(diào)用this.$router 來訪問路由實例。router 具體的屬性和api 方法將在7.1.10 路由實例中進(jìn)行說明。

5.$route.matched

6.$route.name

類型為字符串,即為當(dāng)前路由設(shè)置的name 屬性。

希望本文所述對大家vue.js程序設(shè)計有所幫助。

相關(guān)文章

  • vue.js動態(tài)數(shù)據(jù)綁定學(xué)習(xí)筆記

    vue.js動態(tài)數(shù)據(jù)綁定學(xué)習(xí)筆記

    這篇文章主要為大家詳細(xì)介紹了vue.js動態(tài)數(shù)據(jù)綁定學(xué)習(xí)筆記,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • vue?parseHTML函數(shù)源碼解析start鉤子函數(shù)

    vue?parseHTML函數(shù)源碼解析start鉤子函數(shù)

    這篇文章主要為大家介紹了vue?parseHTML函數(shù)源碼解析start鉤子函數(shù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • 簡化vuex的狀態(tài)管理方案的方法

    簡化vuex的狀態(tài)管理方案的方法

    在 vuejs 相關(guān)項目開發(fā)過程中,我們常常會使用 vuex 作為狀態(tài)管理工具, 整個組件的狀態(tài)做為單向數(shù)據(jù)流的模式管理,這篇文章主要介紹了簡化vuex的狀態(tài)管理方案的方法,感興趣的小伙伴們可以參考一下
    2018-06-06
  • vue的v-if里實現(xiàn)調(diào)用函數(shù)

    vue的v-if里實現(xiàn)調(diào)用函數(shù)

    這篇文章主要介紹了vue的v-if里實現(xiàn)調(diào)用函數(shù)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 淺談Vue服務(wù)端渲染框架Nuxt的那些事

    淺談Vue服務(wù)端渲染框架Nuxt的那些事

    這篇文章主要介紹了淺談Vue服務(wù)端渲染框架Nuxt的那些事,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • Vue.js中的計算屬性、監(jiān)視屬性與生命周期詳解

    Vue.js中的計算屬性、監(jiān)視屬性與生命周期詳解

    最近在學(xué)習(xí)vue,學(xué)習(xí)中遇到了一些感覺挺重要的知識點,感覺有必要整理下來,這篇文章主要給大家介紹了關(guān)于Vue.js中計算屬性、監(jiān)視屬性與生命周期的相關(guān)資料,需要的朋友可以參考下
    2021-06-06
  • Vue3中使用富文本編輯器的示例詳解

    Vue3中使用富文本編輯器的示例詳解

    這篇文章主要為大家詳細(xì)介紹了Vue3中使用富文本編輯器的相關(guān)知識,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價值,感興趣的小伙伴可以參考一下
    2023-10-10
  • 通過GASP讓vue實現(xiàn)動態(tài)效果實例代碼詳解

    通過GASP讓vue實現(xiàn)動態(tài)效果實例代碼詳解

    GASP是一個JavaScript動畫庫,它支持快速開發(fā)高性能的 Web 動畫。GASP 使我們能夠輕松輕松快速的將動畫串在一起,來創(chuàng)造一個高內(nèi)聚的流暢動畫序列。這篇文章主要介紹了通過GASP讓vue實現(xiàn)動態(tài)效果,需要的朋友可以參考下
    2019-11-11
  • vue如何將導(dǎo)航欄、頂部欄設(shè)置為公共頁面

    vue如何將導(dǎo)航欄、頂部欄設(shè)置為公共頁面

    這篇文章主要介紹了vue如何將導(dǎo)航欄、頂部欄設(shè)置為公共頁面問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • 對vue中的input輸入框進(jìn)行郵箱驗證方式

    對vue中的input輸入框進(jìn)行郵箱驗證方式

    這篇文章主要介紹了對vue中的input輸入框進(jìn)行郵箱驗證方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10

最新評論