單項目架構

單項目架構

路由

  1. 路由模塊化處理

按照模塊引入路由,並向外暴露該模塊的路由routes; 在路由的index頁面不作引入組件,並設置路由的處理這樣能夠減小多人開發時路由模塊的衝突。vue

  1. 路由去中心化 路由的模塊化處理其實就是進行了去中心化;
  2. 路由自動收集 能夠經過require.context自動導入組件,減小了每增長一個頁面進行import HelloWorld from '@/view/HelloWorld'的工做; 代碼以下:
import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'

Vue.use(Router)
// require.context 實現自動化導入模板
const contexts = require.context('../view', true, /\.vue$/) ;
// 經過正則匹配,參數1:相對文件目錄,參數2,是否包含子目錄文件
const routes = [];
contexts.keys().forEach(key => {
    // 除去文件名開頭的./ 和 .vue 結尾的擴展名
    const componentConfig = contexts(key).default;
    const routePath = key.replace(/^\.\//,'').replace(/\.vue$/,'');
    // 全局註冊組件
    routes.push({
        path: '/' + routePath,
        name: componentConfig.name,
        component: resolve => require([`../view/${routePath}`], resolve)
    })
});

export default new Router({
    routes: [
        ...routes,
        {
            path: '/',
            name: 'HelloWorld',
            component: HelloWorld
        }
    ]
})

接口管理

接口模塊化 接口自動收集vue-router

組件

  1. 全局公共組件 全局須要的組件能夠在src/components 中進行封裝,方便使用和管理
  2. 模塊公共組件 有些組件只是在某個模塊共用,能夠在這個模塊下新建一個components組件存儲模塊級的組件,這樣既能夠很快找到組件、也能夠從文件劃分上區別出組件的使用範圍,有別於全局的公共組件

數據持久化

  1. 動態路由攜帶參數
  2. url 攜帶參數
  3. localstorage
相關文章
相關標籤/搜索