• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    vue2.0的項目非常實用的代碼集合

    來源:懂視網 責編:小采 時間:2020-11-27 20:01:36
    文檔

    vue2.0的項目非常實用的代碼集合

    vue2.0的項目非常實用的代碼集合:這次給大家帶來vue2.0的項目非常實用的代碼集合,在項目中使用vue2.0的代碼注意事項有哪些,下面就是實戰案例,一起來看一下。1、全局增加進度條提示nprogress地址// main.js 入口js文件 import VueRouter from 'vue-router
    推薦度:
    導讀vue2.0的項目非常實用的代碼集合:這次給大家帶來vue2.0的項目非常實用的代碼集合,在項目中使用vue2.0的代碼注意事項有哪些,下面就是實戰案例,一起來看一下。1、全局增加進度條提示nprogress地址// main.js 入口js文件 import VueRouter from 'vue-router

    這次給大家帶來vue2.0的項目非常實用的代碼集合,在項目中使用vue2.0的代碼注意事項有哪些,下面就是實戰案例,一起來看一下。

    1、全局增加進度條提示
    nprogress地址

    // main.js 入口js文件
     import VueRouter from 'vue-router'
     import NProgress from 'nprogress'Vue.use(VueRouter); //注冊路由插件NProgress.configure({ showSpinner: false }); //進度條配置router.beforeEach((to, from, next) => {
     NProgress.start();
    })
    router.afterEach(transition => {
     NProgress.done();
    });

    2、路由攔截

    router.beforeEach((to, from, next) => {//假設登陸成功后,user信息保存在sessionStorage中。
     if (to.path == '/login') {
     sessionStorage.removeItem('user'); //如果訪問登錄頁,清空之前sessionStorage中的user信息
     } let user = JSON.parse(sessionStorage.getItem('user')); if (!user && to.path != '/login') {
     next({ path: '/login' })
     } else {
     next()
     }//如果訪問非登陸頁,判斷是否有保存的user信息,如果沒有,則判斷為非法訪問,重定向到登錄頁面})

    3、路由切換動效

    <!--app.vue 根組件--><template>
     <div id="app">
     <transition name="fade" mode="out-in">
     <router-view></router-view>
     </transition>
     </div></template><script>
     export default { name: 'app', components: {}
     }</script><style>
     .fade-enter-active,.fade-leave-active { transition: opacity .2s ease;
     } .fade-enter,.fade-leave-active { opacity: 0;
     }</style>

    4、路由嵌套

    //router.jsimport a from 'a.vue' import a from 'b.vue' import a from 'c.vue' import a from 'main.vue' let routes = [
     { path: '/login', component: a, name: 'a'},{ path: '/', component: main, name: '數據中心', iconCls: 'iconfont icon-shuju', //假裝有個icon圖標
     children: [
     { path: '/main/b', component: b, name: 'b' },
     { path: '/main/c', component: c, name: 'c' },
     ]
     },
    ]export default routes;//main.js 入口js文件import routes from './routes
    const router = new VueRouter({
     mode: 'history',
     routes
    })
    new Vue({
     el: '#app',
     template: '<App/>',
     router,
     components: { App }
    }).$mount('#app')

    ps:路由的配置,啟動,掛載可以分別放在不同的頁面。將模塊化進行到底。routes對象,甚至可以來自于vuex,便于管理數據。如下例子:

    //menus.js 屬于vuex模塊export default { '0': 'all', '2': 'breast', '3': 'leg', '4': 'face', '5': 'others', '6': 'buttocks', '7': 'stockings'}//router.js 路由文件import menus from '../store/menus'; //引入const getRouters = () => { return Object.keys(menus).map(key => { return { path: `/${menus[key]}/:page(\\d+)?`, component: createListView(Number(key))
     }
     })
    }export default new Router({ mode: 'history', routes: [
     { path: 'a', component: a },
     ...getRouters()
     ]
    })

    5、全局過濾器
    一個項目中,可能要用到很多過濾器來處理數據,多個組件公用的,可以注冊全局過濾器。單個組件使用的,就掛載到實例filters中。
    項目做的多了以后,可以整理一套常用的filters,不用反復的寫。比如:時間等各種操作,數據格式轉化,單位換算,部分數據的md5加密等...

    //filters.js 過濾器文件export function formatDateTime (date) { //格式化時間戳
     var y = date.getFullYear() var m = date.getMonth() + 1
     m = m < 10 ? ('0' + m) : m var d = date.getDate()
     d = d < 10 ? ('0' + d) : d var h = date.getHours() var minute = date.getMinutes()
     minute = minute < 10 ? ('0' + minute) : minute return y + '-' + m + '-' + d + ' ' + h + ':' + minute
    }export function test (a) { return `${a}aaaa`}
    ......//main.js 入口js文件import Vue from 'vue'import * as filters from './filters'Object.keys(filters).forEach(key => {
     Vue.filter(key, filters[key])
    })

    6、http攔截器
    攔截器是全局的,攔截器可以在請求發送前和發送請求后做一些處理。
    攔截器在一些場景下會非常有用,比如請求發送前在headers中設置access_token,或者在請求失敗時,提供通用的處理方式。

    axios實現-axios全攻略

    // http request 攔截器axios.interceptors.request.use( config => { if (store.state.token) { // 判斷是否存在token,如果存在的話,則每個http header都加上token
     config.headers.Authorization = `token ${store.state.token}`;
     } return config;
     },
     err => { return Promise.reject(err);
     });// http response 攔截器axios.interceptors.response.use( response => { return response;
     },
     error => { if (error.response) { switch (error.response.status) { case 401: // 返回 401 清除token信息并跳轉到登錄頁面
     store.commit(types.LOGOUT);
     router.replace({ path: 'login', query: {redirect: router.currentRoute.fullPath}
     })
     }
     } return Promise.reject(error.response.data) // 返回接口返回的錯誤信息
     });

    vue-resource實現-vue-resource全攻略

    Vue.http.interceptors.push((request, next) => {
     console.log(this)//此處this為請求所在頁面的Vue實例
     // modify request
     request.method = 'POST';//在請求之前可以進行一些預處理和配置
     // continue to next interceptor  next((response) => {//在響應之后傳給then之前對response進行修改和邏輯判斷。對于token時候已過期的判斷,就添加在此處,頁面中任何一次http請求都會先調用此處方法
      response.body = '...';
        return response;
     });
    });

    相信看了本文案例你已經掌握了方法,更多精彩請關注Gxl網其它相關文章!

    相關閱讀:

    不同版本的vscdoe如何調試不同版本nodejs

    Vue.js的2.0后臺系統實戰案例

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    vue2.0的項目非常實用的代碼集合

    vue2.0的項目非常實用的代碼集合:這次給大家帶來vue2.0的項目非常實用的代碼集合,在項目中使用vue2.0的代碼注意事項有哪些,下面就是實戰案例,一起來看一下。1、全局增加進度條提示nprogress地址// main.js 入口js文件 import VueRouter from 'vue-router
    推薦度:
    標簽: VUE 代碼 的項目
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 亚洲综合国产精品| 精品国产午夜福利在线观看| 精品久久久久久久| 久久精品无码一区二区app| 久久ww精品w免费人成| 久久精品18| 久久亚洲欧美日本精品| 日韩精品真人荷官无码| 精品国产成人在线| 青青草国产精品久久| 精品国产一区二区三区色欲 | 久久夜色精品国产噜噜噜亚洲AV| 精品亚洲成α人无码成α在线观看| 国产精品视频免费观看| 精品国产午夜理论片不卡| 综合久久精品色| 欧美精品黑人粗大欧| 国产精品污WWW一区二区三区| 国产91大片精品一区在线观看| 日韩人妻无码精品久久久不卡| 欧美日韩精品一区二区三区不卡| 2021年精品国产福利在线 | 99精品免费视品| 久久久无码精品亚洲日韩按摩| 欧美亚洲成人精品| 久久国产成人亚洲精品影院| 国产精品福利在线观看免费不卡| 99久re热视频这里只有精品6| 久久成人影院精品777| 国产精品国产三级国产专播 | 国产av无码专区亚洲国产精品| 国产日韩精品在线| 99精品视频在线| 国产cosplay精品视频| 国自产偷精品不卡在线| 少妇人妻偷人精品视频| 亚洲精品无码专区久久久| 国产精品无码免费播放| 亚洲国产精品嫩草影院在线观看 | 黑巨人与欧美精品一区| 国产精品亚洲欧美大片在线看 |