<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • uniapp中的一個完全相似Vue-router的路由插件

          2020-3-4    seo達(dá)人



          1.引入

          三種引用方式

          第一種 npm安裝

          項目根目錄命令行執(zhí)行



          npm install uni-simple-router

          1

          第二種 插件市場(使用HBuilderX導(dǎo)入插件)



          第三種 ZIP下載 解壓



          2.項目中引入



          import Vue from 'vue'

          import {RouterMount} from 'uni-simple-router';

          import Router from './router'

          Vue.use(Router)

          //...后續(xù)代碼



          引入之后就開始我們的正式使用。

          第一步先在項目的根目錄下創(chuàng)建一個router文件夾。

          格式為:



          router

          |---modules

          |---index.js

          |---index.js



          router中的modules文件夾是用來放路由表模板的。modules中的index.js內(nèi)容為



          const files = require.context('.', false, /.js$/)

          const modules = []



          files.keys().forEach(key => {

            if (key === './index.js') return

            const item = files(key).default

            modules.push(...item)

          })



          export default modules



          這個文件用來把同目錄下的js文件讀取并整合所有路由。

          在這里創(chuàng)建的js文件代碼示例:



          const home = [

          {

                  //注意:path必須跟pages.json中的地址對應(yīng),最前面別忘了加'/'哦

                path: '/pages/home/index',

                aliasPath:'/',  //對于h5端你必須在首頁加上aliasPath并設(shè)置為/

                name: 'index',

                  meta: {

                  title: '首頁',

              },

              },

              {

              path: '/pages/home/list',

                  name: 'list',

                  meta: {

                  title: '列表',

              },

          },

          ]

          export default home



          第二步配置router下的index.js



          import modules from './modules'

          import Vue from 'vue'

          //這里僅示范npm安裝方式的引入,其它方式引入請看最上面【安裝】部分

          import Router from 'uni-simple-router'



          Vue.use(Router)

          //初始化

          const router = new Router({

              routes: [...modules]//路由表

          });



          //全局路由前置守衛(wèi)

          router.beforeEach((to, from, next) => {

            next()

          })

          // 全局路由后置守衛(wèi)

          router.afterEach((to, from) => {

          })

          export default router;



          第三步 就是配置main.js



          import Vue from 'vue'

          import App from './App'

          import router from './router'

          import { RouterMount } from 'uni-simple-router'



          App.mpType = 'app'



          const app = new Vue({

          ...App

          })

          //v1.3.5起 H5端 你應(yīng)該去除原有的app.$mount();使用路由自帶的渲染方式

          // #ifdef H5

          RouterMount(app,'#app');

          // #endif



          // #ifndef H5

          app.$mount(); //為了兼容小程序及app端必須這樣寫才有效果

          // #endif



          這樣你的路由就配置好了。



          如果不想繁瑣的配置modules下的文件,可以用webpack自動構(gòu)建路由表

          安裝



          npm install uni-read-pages

          1

          配置 vue.config.js (可能需要手動創(chuàng)建)



          const TransformPages = require('uni-read-pages')

          const tfPages = new TransformPages({

          //如果你需要獲取更多參數(shù),那么請配置參數(shù)!

          includes:['path','name','meta']

          })

          module.exports = {

              configureWebpack: {

                  plugins: [

                      new tfPages.webpack.DefinePlugin({

                          ROUTES: JSON.stringify(tfPages.routes)

                      })

                  ]

              }

          }



          然后去pages.json里面更改配置,加入所需要的內(nèi)容

          最后配置路由表



          import Vue from 'vue'

          //這里僅示范npm安裝方式的引入,其它方式引入請看最上面【安裝】部分

          import Router from 'uni-simple-router'



          Vue.use(Router)

          //初始化

          const router = new Router({

              routes:ROUTES //路由表

          });



          //全局路由前置守衛(wèi)

          router.beforeEach((to, from, next) => {

            next()

          })

          // 全局路由后置守衛(wèi)

          router.afterEach((to, from) => {

          })

          export default router;




          日歷

          鏈接

          個人資料

          存檔

          久久电影网| 久久青青草原亚洲av无码app| 国产亚洲色婷婷久久99精品| 粉嫩小泬无遮挡久久久久久| 久久久久久国产精品免费无码 | 久久精品综合网| 久久久噜噜噜www成人网| 国产精品久久一区二区三区| 国产福利电影一区二区三区久久老子无码午夜伦不 | 国产综合久久久久久鬼色| 国产成人久久777777| 国产成人精品综合久久久| 久久香蕉国产线看观看99| 久久精品国产亚洲AV蜜臀色欲| 久久精品aⅴ无码中文字字幕重口 久久精品a亚洲国产v高清不卡 | 色青青草原桃花久久综合| 国产精品视频久久久| 亚洲精品国精品久久99热一| 久久www免费人成精品香蕉| 2022年国产精品久久久久| 无码人妻久久一区二区三区蜜桃| 久久久久久免费一区二区三区 | 久久精品视频网| 国产aⅴ激情无码久久| 无码任你躁久久久久久| 99国内精品久久久久久久| 91精品国产综合久久久久久| 久久无码国产专区精品| 久久久久亚洲AV成人网| 国产ww久久久久久久久久| 久久美女网站免费| 久久精品一区二区| 国产午夜精品久久久久九九| 潮喷大喷水系列无码久久精品| 麻豆AV一区二区三区久久| 亚洲va久久久噜噜噜久久男同| 无码人妻久久一区二区三区蜜桃| 亚洲国产精品无码久久九九| 欧美精品一区二区久久| 色婷婷久久久SWAG精品| 久久久久久午夜精品|