<strike id="cy2gs"><menu id="cy2gs"></menu></strike>
  • <del id="cy2gs"><dfn id="cy2gs"></dfn></del>
  • vue.js路由與vuex數據模型設計

    2020-5-23    seo達人

    路由設計

    本則路由考慮驗證進入登錄頁面,完成登錄操作進入首頁。


    import Vue from "vue";

    import Router from "vue-router";

    Vue.use(Router);


    import store from "@/store/store";


    // (延遲加載)

    const Login = () => import("@/views/login");

    const Home = () => import("@/views/home");


    const HomeRoute = {

     path: "/",

     name: "首頁",

     component: Home

    };


    export { HomeRoute };


    const router = new Router({

     base: process.env.BASE_URL,

     routes: [

       {

         path: "/login",

         name: "登錄",

         component: Login

       },

       HomeRoute

     ]

    });


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

     let loginName = store.state.user.loginName;

     if (to.path === "/" && loginName == "") {

       next("/login");

     } else {

       next();

     }

    });


    export default router;

    數據模型

    const state = {

     loginName: ""

    };

    const mutations = {

     SET_LOGINNAME(state, loginName) {

       state.loginName = loginName;

     }

    };

    const actions = {

     login({ commit }, userInfo) {

       return new Promise((res, ret) => {

         commit("SET_LOGINNAME", userInfo);

         res();

       });

     },

     logout({ commit }) {

       return new Promise((res, ret) => {

         commit("SET_LOGINNAME", "");

         res();

       });

     }

    };

    export default {

     namespaced: true,

     state,

     mutations,

     actions

    };

    import Vue from "vue";

    import Vuex from "vuex";

    Vue.use(Vuex);


    import user from "./modules/user";


    const store = new Vuex.Store({

     modules: {

       user

     }

    });


    export default store;

    組件

    <div class="modify">

     <input

       type="text"

       @keydown.enter.prevent="handleKeydown"

       v-model="currentVal"

       placeholder="使用enter鍵切換頻道"

     />

     <button @click="reset" style="margin-left:5px;outline:none;cursor:pointer;">復位</button>

    </div>

    import { mapState, mapMutations, mapActions } from "vuex";

    export default {

     name: "login",

     data() {

       return {

         currentVal: "",

         list: ["咨詢服務", "音悅臺", "體育臺", "財經頻道", "時尚資訊"],

         index: 0

       };

     },

     computed: {

       ...mapState({

         loginName: state => state.user.loginName

       })

     },

     methods: {

       ...mapActions({

         login: "user/login"

       }),

       handleToHome() {

         let userInfo = "user";

         this.login(userInfo);

         this.$router.push({

           path: "/"

         });

       },

    日歷

    鏈接

    個人資料

    藍藍設計的小編 http://m.skdbbs.com

    存檔

    主站蜘蛛池模板: 少妇精品无码一区二区三区| 国产精品一区二区久久精品| 国内精品伊人久久久久AV影院| 隔壁老王国产在线精品| 久久精品亚洲精品国产色婷| 男女男精品视频网站在线观看| 亚洲国产精品久久66| 国产午夜精品免费一区二区三区| 亚洲AV无码乱码精品国产| 国产精品麻豆入口| 久久免费精品视频| 国产精品第12页| 日本VA欧美VA精品发布| 日本精品久久久久影院日本| 国产精品偷窥熟女精品视频| 性色精品视频网站在线观看| 99在线精品视频在线观看| 久久综合久久自在自线精品自| 无码人妻精品一区二区三区99不卡| 国产区精品高清在线观看| 一区二区三区四区精品视频| 欧美精品国产精品| 欧美精品在线一区| 91视频精品全国免费观看| 国产乱子伦精品无码码专区| 日本内射精品一区二区视频| 无码精品A∨在线观看| 一本一道精品欧美中文字幕| 亚洲无码日韩精品第一页| 亚洲国产精品综合久久一线| 人妻少妇看A偷人无码精品视频| 久久久无码精品亚洲日韩软件| 国产在线精品一区二区高清不卡| 国产精品免费视频观看拍拍 | 精品久久无码中文字幕| 少妇人妻偷人精品无码视频新浪| 亚洲视频在线精品| 日韩精品无码AV成人观看| 精品一区二区三区免费毛片爱 | 日韩人妻无码精品一专区| 无码人妻精品一区二区三区东京热 |