• <abbr id="chdyf"></abbr>
    <ruby id="chdyf"><acronym id="chdyf"><meter id="chdyf"></meter></acronym></ruby>
    <bdo id="chdyf"></bdo>
    <dfn id="chdyf"><menu id="chdyf"></menu></dfn>
    1. <menuitem id="chdyf"></menuitem><strong id="chdyf"><menu id="chdyf"></menu></strong>

      <rt id="chdyf"><menu id="chdyf"></menu></rt>
      成人小说一区二区三区,伊人精品成人久久综合全集观看,久久HEZYO色综合,中文字幕精品人妻熟女,影音先锋成人网站,我要看免费一级毛片,中国女人做爰A片,中文字幕av久久爽Av

      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://www.wtxcl.cn

      存檔

      主站蜘蛛池模板: 精品国产911在线观看| 亚洲人妻系列| jizzjizz亚洲| 日韩中文字幕一区二区高清 | 潼关县| 九九在线精品| 久久蜜臂| 午夜福利大片| 日韩精品人妻中文字幕有| 你懂的国产在线| 日本成人社区| 玖草视频在线观看| 国产69精品久久久| 91你懂的| 综合色区亚洲熟女妇p| 临洮县| 欧美+日产+中文| 国产黄色视频大全| 久久熟女| 色色资源平台| 亚洲欧美日韩精品专区52| a级国产乱理伦片在线观看99| 免费日韩在线观看av| 人妖福利导航| 色偷偷www8888| 日韩精品人妻中文字幕有码| 国产成人青青久久大片| 精品无码国产AV一区二区三区| 日韩国产亚洲三区在线| www.日韩欧美| 肏国产女人免费视频| 国产美女久久久久久| 女邻居夹得好紧太爽了av| 宅男宅女精品国产AV天堂| 欧美色熟妇| 锦州市| 加勒比综合网| 无套内谢少妇毛片A片樱花| 秋霞无码中文| 龙游县| 国产日韩欧美黄色片免费观看|