国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

20190613-Vue Router 基礎(一)

andong777 / 1367人閱讀

摘要:那么這個時候,我們需要在中,加載配置三個組件為復數。傳遞參數不需要在中進行配置獲取參數其他的寫法帶查詢參數,下面的結果為拼到中

什么是 Vue Router?

Vue Router是Vue.js的官方路由管理器,可以控制Vue單頁應用的路由。

如何快速上手? vue-cli腳手架自帶Vue-Router依賴
新版的vue-cli腳手架中,默認default模式沒有router依賴,請選擇Manually select features后添加Router依賴后,選擇History模式。

vue-cli官網

在HTML進行路由設置

    
    新建分類
    

我們可以利用標簽來控制單頁應用的跳轉路徑

使用單文件組件內進行路由設置

    新建分類


export default {
  methods: {
    onCreate() {
      this.$router.push({
        path: "/categories/create"
      })
    }
  }
}

我可以使用this.$router方法進行操作路由

執行了push或跳轉操作還遠遠不夠,我們還在router.js上進行路由(目錄)添加你需要對應標準的地址以及地址包含component組件,不然編譯器不知道你要跳轉的實質內容是什么~
router.js配置
// 按需加載你需要的依賴

import Vue from "vue"
import Router from "vue-router"
import Main from "./views/main.vue"
import CategoryEdit from "./components/categoryEdit.vue"

Vue.use(Router)

export default new Router({
  mode: "history",   // history模式
  base: process.env.BASE_URL, // 環境內部基礎地址
  routes: [
    {
      path: "/", // 當地址在根目錄的時候,跳轉到Main的組件,這就是首頁
      name: "main",
      component: Main,
      children: [
        {
          path: "/categories/create",// 它是Main的子路由,默認在首頁 調用CategoryEdit組件
          name: "categoryCreate",
          component: CategoryEdit
        },
        {
          path: "/categories/create", // 它是Main的子路由, 當地址轉到/categories/create上,則調用CategoryEdit組件
          name: "categoryCreate",
          component: CategoryEdit
        }
      ]
    }
  ]
})
嵌套路由

剛剛在上面我們提高了「子路由」,然后我們開始了解下嵌套路由

/user/foo/profile                     /user/foo/posts
+------------------+                  +-----------------+
| User             |                  | User            |
| +--------------+ |                  | +-------------+ |
| | Profile      | |  +------------>  | | Posts       | |
| |              | |                  | |             | |
| +--------------+ |                  | +-------------+ |
+------------------+                  +-----------------+

這是官網的栗子,我們看來下更直觀。

我們要做的是改變這個網頁的子路由內容組件人,讓我們看下代碼吧~


    
      
        
          
          
            新建分類
            分類列表
          
        
      
    
    
      
      
      
        
        
        
      
    


export default {
  methods: {
    onCreate() {
      this.$router.push({
        path: "/categories/create"
      })
    }
  }
}

當我們在進行執行 $this.router.push 或者 跳轉的時候,
我們可以看到,push的路徑是「/categories/create」,回到router.js代碼上,我們可以看到,/categories/create是在/根目錄下的children里面,這就說明它是根目錄的子路由,子路由在子路由標簽上進行渲染。

我們還可以利用的name屬性進行跳轉制定的子路由容器
如圖上,父容器HTML中有3個route視圖:

header

side

content

我們需要這三個都是動態的,都是需要根據需求加載不同的內容。



那么這個時候,我們需要在router.js中,加載配置三個組件

components為復數。
import Header from "./components/header.vue"
import Side from "./components/side.vue"
import Content from "./components/content.vue"
import CategoryEdit from "./components/categoryEdit.vue"
import CategoryList from "./components/categoryList.vue"

 routes: [
    {
      path: "/",
      name: "main",
      components: {
        efault: Header,
        a: Side,
        b: Content
      },
      children: [
        {
          path: "/categories/create/:userid",
          name: "categoryCreate",
          component: CategoryEdit
        },
        {
          path: "/",
          name: "categoryList",
          component: CategoryList
        }
      ]
    }
  ]
動態路由分配(如何給函數添加參數以及如何保證跳轉的唯一性)
在絕大分部情況下,我們需要利用同一個組件加載不同的數據內容(比如詳情、用戶表信息等等),那我們怎么保證跳轉的唯一性呢?

這時候,我們需要利用路由命名方法

1.router.js 配置對應路徑以及名字
export default new Router({
  mode: "history",
  base: process.env.BASE_URL,
  routes: [
    {
      path: "/",
      name: "main",
      component: Main,
      children: [
        {
          path: "/categories/create/:userid", // 這是userid就是參數名
          name: "categoryCreate",
          component: CategoryEdit
        },
        {
          path: "/",
          name: "categoryList",
          component: CategoryList
        }
      ]
    }
  ]
})
2.路由容器,執行跳轉操作
  onCreate() {
      this.$router.push({
        name: "categoryCreate",
        params: { userid: 123 }
      })
    }
3.點擊跳轉,則地址變成
http://localhost:8080/categories/create/123
4.在子路由容器中獲取到參數名字和內容
mounted() {
    // 注意是this.$route,是路由對象
    console.log("你獲取的參數是:" + this.$route.params); 
},

打印出來的數據

{
   userid: "123"
}

關于命名路由,還有其他的寫法

// HTML上
User

// .vue組件的其他寫法
const userId = "123"

router.push({ name: "user", params: { userId }}) // -> /user/123
router.push({ path: `/user/${userId}` }) // -> /user/123

// 這里的 params 不生效,必須使用上面的寫法
router.push({ path: "/user", params: { userId }}) // -> /user
GET請求-路由組件傳參數

這個和一般的url上拼接參數,獲取一樣,只不過router提供一個設置和獲取方法。

http://localhost:8080/categories/create/123?dataval=admin
傳遞參數
    this.$router.push({
        name: "categoryCreate?ad=11",
        params: { 
          userid: 123 
        },
        query: {
          dataval: "admin"
        }
      })
不需要在router.js中進行配置
獲取參數
let val = this.$route.query.dataval; // admin
其他的寫法

Register


this.$router.push({path: `/categories/create/${userid}?admin=tre`});

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/104694.html

相關文章

  • vue-router 基礎知識點

    摘要:路由模塊的本質就是建立起和頁面之間的映射關系。模式的原理是事件監測值變化,可以在對象上監聽這個事件。這兩個方法應用于瀏覽器記錄棧,在當前已有的基礎之上,它們提供了對歷史記錄修改的功能。 vue-router 這里的路由并不是指我們平時所說的硬件路由器,這里的路由就是SPA(單頁應用)的路徑管理器。再通俗的說,vue-router就是WebApp的鏈接路徑管理系統。vue-router是...

    ningwang 評論0 收藏0
  • Vue-router(vue路由基礎詳解)

    摘要:你可以在創建實例的時候,在配置中給某個路由設置名稱。如果沒有設置名字,那么默認為。 Vue.js路由(Vue-router) 安裝 直接引入 vue-router下載鏈接https://unpkg.com/vue-router/... npm下載 npm install vue-router 如果在一個模塊化工程中使用它,必須要通過 Vue.use() 明確地安裝路由功能:在你的文...

    JasinYip 評論0 收藏0
  • vue 路由基礎

    摘要:路由基礎使用插件處理路由,路由是開發單頁應用必須掌握的知識。什么是是官方提供前端路由插件,借助它我們實現可以基于路由和組件的單頁面應用。子路由前面不能有。命名路由路由對象中的屬性是路由的名字,可用該名字指定路徑。 vue 路由基礎 vue 使用 vue-router 插件處理路由,路由是開發單頁應用必須掌握的知識。 什么是 vue-router? (1)vue-router 是 Vue...

    mingde 評論0 收藏0
  • [ 起學React系列 -- 11 ] React-Router4 (1)

    摘要:中的包中的包主要有三個和。的理念上面提到的理念是一切皆組件以下統一稱組件。從這點來說的確方便了不少,也迎合一切皆組件的理念。組件是中主要的組成單位,可以認為是或的路由入口。將該標示為嚴格匹配路由。的屬性追加一條。 2019年不知不覺已經過去19天了,有沒有給自己做個總結?有沒有給明年做個計劃?當然筆者已經做好了明年的工作、學習計劃;同時也包括該系列博客剩下的博文計劃,目前還剩4篇:分別...

    tinysun1234 評論0 收藏0
  • Node.js使用Koa搭建 基礎項目

    摘要:目錄一創建項目二配置路由三靜態資源四模板引擎五結語是由原班人馬打造的超輕量服務端框架與相比,除了自由度更高,可以自行引入中間件之外,更重要的是使用了,從而避免了回調地獄不過也是因為代碼升級,所以需要以上的環境一創建項目手動創建一個項目目錄, 目錄 一、創建項目二、配置路由三、靜態資源四、模板引擎五、結語 Koa 是由 Express 原班人馬打造的超輕量服務端框架與 Express 相...

    BingqiChen 評論0 收藏0

發表評論

0條評論

andong777

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<