午夜勾魂曲-午夜福利自怕-午夜福利在线观看6080-午夜福利院电影-国产精品毛片AV久久97-国产精品麻豆高潮刺激A片

超簡單入門Vuex小示例

2020-4-28    seo達人

寫在前面

本文旨在通過一個簡單的例子,練習vuex的幾個常用方法,使初學者以最快的速度跑起來一個vue + vuex的示例。

學習vuex需要你知道vue的一些基礎知識和用法。相信點開本文的同學都具備這個基礎。

另外對vuex已經比較熟悉的大佬可以忽略本文。

生成基于vue的項目

基于vue-cli腳手架生成一個vue項目
常用npm命令:

npm i vue-vli -g vue --version vue init webpack 項目名 

進入項目目錄,使用npm run dev先試著跑一下。

一般不會出現問題,試跑成功后,就可以寫我們的vuex程序了。

使用vue完成的示例

使用vuex首先得安裝vuex,命令:

npm i vuex --save

介紹一下我們的超簡單Demo,一個父組件,一個子組件,父組件有一個數據,子組件有一個數據,想要將這兩個數據都放置到vuex的state中,然后父組件可以修改自己的和子組件的數據。子組件可以修改父組件和自己的數據。

先放效果圖,初始化效果如下:

如果想通過父組件觸發子組件的數據,就點“改變子組件文本”按鈕,點擊后效果如下:

如果想通過子組件修改父組件的數據,就在子組件點擊“修改父組件文本”按鈕,點擊后效果如下:

代碼文件介紹

首先是Parent.vue組件

<template> <div class="parent"> <h3>這里是父組件</h3> <button type="button" @click="clickHandler">修改自己文本</button> <button type="button" @click="clickHandler2">修改子組件文本</button> <div>Test: {{msg}}</div> <child></child> </div> </template> <script> import store from '../vuex' import Child from './Child.vue' export default { computed: {
            msg(){ return store.state.testMsg;
            }
        }, methods:{
            clickHandler(){
                store.commit('changeTestMsg', '父組件修改自己后的文本')
            },
            clickHandler2(){
                store.commit('changeChildText', '父組件修改子組件后的文本')
            }
        }, components:{ 'child': Child
        },
        store,
    } </script> <style scoped> .parent{ background-color: #00BBFF; height: 400px;
    } </style> 

下面是Child.vue子組件

<template> <div class="child"> <h3>這里是子組件</h3> <div>childText: {{msg}}</div> <button type="button" @click="clickHandler">修改父組件文本</button> <button type="button" @click="clickHandler2">修改自己文本</button> </div> </template> <script> import store from '../vuex' export default { name: "Child", computed:{
            msg(){ return store.state.childText;
            }
        }, methods: {
            clickHandler(){
                store.commit("changeTestMsg", "子組件修改父組件后的文本");
            },
            clickHandler2(){
                store.commit("changeChildText", "子組件修改自己后的文本");
            }
        },
        store
    } </script> <style scoped> .child{ background-color: palegreen; border:1px solid black; height:200px; margin:10px;
    } </style> 

最后是vuex的配置文件

 import Vue from 'vue' import Vuex from 'vuex';

Vue.use(Vuex) const state = { testMsg: '原始文本', childText:"子組件原始文本" } const mutations = {
    changeTestMsg(state, str){
        state.testMsg = str;
    },
    changeChildText(state, str){
        state.childText = str;
    }

} const store = new Vuex.Store({ state: state, mutations: mutations
}) export default store;

后記

通過該vuex示例,了解vuex的常用配置及方法調用。希望對不怎么熟悉vuex的同學快速上手vuex項目有點幫助。

因為沒太多東西,我自己也是剛接觸,本例就不往GitHub扔了,如果嘗試了本例,但是沒有跑起來的同學,可以一起交流下。

日歷

鏈接

個人資料

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

存檔

主站蜘蛛池模板: 精品久久久久亚洲 | 亚洲精品视频免费在线观看 | 国产69精品久久久久乱码免费 | RUNAWAY韩国动漫免费网 | 午夜精品久久久久久影视riav | 国产在线精彩亚洲 | 被黑人群jian又粗又大H | 中文字幕亚洲无线码在线 | 直插下身完整的欧美版 | 国产精品美女久久久网站动漫 | 无码国产精品高潮久久9 | 97夜夜澡人人爽人人模人人喊 | 扒开黑女人p大荫蒂老女人 扒开粉嫩的小缝末成年小美女 | 武侠艳妇屈辱的张开双腿 | 四虎影视国产精品亚洲精品 | 日本粉嫩学生毛绒绒 | 国产精品一区二区AV交换 | 色戒西瓜视频 | 色噜噜2017最新综合 | 久草在线草a免费线看 | 亚洲色图另类小说 | 娇女的呻吟亲女禁忌h16 | 国产永不无码精品AV永久 | 欧美怡红院视频一区二区三区 | 亚洲国产中文字幕新在线 | 欧美日韩综合一区 | BL文高H强交 | 98国产精品人妻无码免费 | 免费亚洲视频在线观看 | 精品无码国产AV一区二区三区 | 亚洲国产精品一区二区三区在线观看 | 美女被爆插 | 老师给美女同学开嫩苞 | 99久久精品久久久 | 亚洲AV无码影院在线播放 | 曰曰夜夜在线影院视 | 亚洲国产在线观看免费视频 | 老阿姨才是最有味的一区二区 | 亚洲一区二区三不卡高清 | 最近2018年手机中文字幕 | 99在线观看精品 |