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

      存檔

      主站蜘蛛池模板: wwww免费网站| 久久国产欧美日韩精品| 无码少妇视频| 2024男人天堂| 国产精品免费久久久久软件| 亚洲中文字幕乱码免费播放| 性做久久久久久久免费观看| 91操操| 雅安市| 专区国产无码| 亚洲a在线播放| 激情av一区二区三区| 亚洲成人有码免费在线| 亚洲日韩字幕| 亚洲中文无码成人片| 人妻少妇精品视频| 天堂a?中文在线| 日韩人妻无码中文字幕一区| 色色资源平台| 日韩乱码一区| 国产精品久久久久久久久电影网| 婷婷五月麻豆| 手机av中文字幕| 日本岛国大片不卡人妻| 午夜男人天堂| 爆乳一区二区| 国产精品久久无码不卡黑寡妇| www.亚洲成人| 久久福利影院| 欧美福利导航| 玩弄丰满少妇| 岛国在线无码高清视频| 肉色网站| 超碰人妻在线| 手机在线看片不卡中文字幕| 亚洲日韩AV在线| 免费国产va| 99久久亚洲综合国产一区| 夜夜国自一区| 狼友看片| Aⅴ无码专区在线观看|