vuex的简单使用逻辑

使用vuex示例:
1.创建两个组件分别是ProductListOne.vue,ProductListTwo.vue
2.创建一个store.js文件。这个就是共享数据的存储文件
文件中的内容:
--------------------------------------------
import Vue from 'vue'
import Vuex from 'vuex'
// 通过vue使用我们的中间件Vuex
Vue.use(Vuex)
// 通过添加export表明这个store是能被外部使用的
export const store = new Vuex.Store({
	state:{
		products:[
			{name:'马云',price:200},
			{name:'张绍刚',price:180},
			{name:'赵丽颖',price:150},
			{name:'王思聪',pirce:190}
		]
	}
});
--------------------------------------------
3.因为我们所有的文件都要经过main.js文件所以我们需要在main.js文件中引入这个store.js
中的内容
--------------------------------------------
import Vue from 'vue'
import App from './App.vue'
// 引入store文件。不添加后缀默认是store.js文件
import  {store} from './store/store'
new Vue({
  // 在实例化根类中这么进行书写
  store:store,
  el: '#app',
  render: h => h(App)
})
--------------------------------------------
4.在两个组件中代码
<template>
  <div id="product-list-one">
   	<h2>第1个组件</h2>
   	<li v-for="product in products">
   		<span>{{product.name}}</span>
   	</li>
  </div>
</template>
<script>
export default {
 	computed:{
 		products(){
 			return this.$store.state.products;
 		}
 	}
}
</script>

<style>

</style>
5.我们在app.vue中进行声明子组件
<template>
  <div id="app">
      <product-list-one></product-list-one>
      <product-list-two></product-list-two>
  </div>
</template>

<script>
import ProductListOne from './components/ProductListOne.vue'
import ProductListTwo from './components/ProductListTwo.vue'
export default {
  name: 'app',
  components:{
    'product-list-one':ProductListOne,
    'product-list-two':ProductListTwo,
  },
  data () {
    return {
        
    }
  }
}
</script>

<style>

</style>

效果:

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gjanuary

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值