javascript - vuex平行组件简单传值问题
天蓬老师
天蓬老师 2017-04-11 13:18:20
[JavaScript讨论组]

用vuex,简单的二个平行组件值传递的问题

关键的三个文件位置如上:

a.vue:




b.vue:




store.js

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({
    state: {
        message: ''
    },
    mutations: {
        updateMessage(state, message) {
            state.message = message
        }
    }
})
export {
    store
}

预期想要的效果是在组件a里输入值,然后在组件b里可以获取(显示)到a组件里输入的值。不知道哪里出错了,由于刚看vuex,所以不要嫌我问的问题简单,嘿嘿。

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(2)
天蓬老师

我讲下常规流程。

main.js

import 'babel-polyfill'
import Vue from 'vue'
import App from './components/App.vue'
import store from './store'

new Vue({
  el: '#app',
  store, // 这里是关键代码。 
  render: h => h(App)
})

组件内使用

import { mapState } from 'vuex'

export default {
    .... 省略代码
    computed: mapState({
        msg: state => state.message
    })
    .... 省略代码
}

或者

export default {
    .... 省略代码
    computed:{
        msg: this.$store.state.message
    } 
    .... 省略代码
}

另外,官方demo讲得很详细,请研究下代码
https://github.com/vuejs/vuex...

黄舟

this.$store

a.vue:
computed: {

message: this.$store.state.message

},
methods: {
updateMessage (e) {

this.$store.commit('updateMessage', e.target.value)

}
}

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号