vuex创建store并用computed获取数据

vuex中的store是一个状态管理器,用于分发数据。相当于父组件数据传递给子组件。

1.安装vuex

npm i vuex --save

2.在src目录中创建store文件夹,里面创建store.js

(1)store.js里引入vue和Vuex,

import Vue from ‘vue‘
import Vuex from ‘vuex‘
Vue.use(Vuex)

(2)创建并导出store对象

export const store = new Vuex.Store({  })

(3)在store对象中创建数据

import Vue from ‘vue‘
import Vuex from ‘vuex‘
Vue.use(Vuex)
export const store = new Vuex.Store({
    state:{
        product:[
            {name:"自行车",price:120},
            {name:"电动车",price:200},
            {name:"出租车",price:300},
            {name:"大货车",price:444},
        ]
    }
})

3.在main.js中引入store

import Vue from ‘vue‘
import App from ‘./App‘
import {store} from ‘../src/store/store‘    // 引入store
Vue.config.productionTip = false

/* eslint-disable no-new */
new Vue({
  el: ‘#app‘,
  store,    // 这里写这里
  components: { App },
  template: ‘<App/>‘
})

4.在子组件中使用computed获得store里的数据

<template>
<div>
    <p>one</p>
    <table border="1">
        <tr>
            <th>产品名称</th>
            <th>产品价格</th>
        </tr>
        <tr v-for="(item,i) in getProduct">
            <td>{{item.name}}</td>
            <td>${{item.price}}</td>
        </tr>
    </table>
</div>
</template>
<script>
export default {
  name: "One",
  data () {
    return {
    };
  },
  computed:{
      getProduct(){
          // this.$tore.state.xxx
          return this.$store.state.product;
      }
  }
}
</script>
<style lang="css" scoped>
table{
    width: 200px;
    height: 100px;
    border-collapse: collapse;
}
</style>

原文地址:https://www.cnblogs.com/luguankun/p/10759638.html

时间: 2024-08-01 05:55:53

vuex创建store并用computed获取数据的相关文章

redux创建store,处理更新数据

如果我们想使用redux,第一步需要通过 yarn add redux 来安装redux 安装成功后就需要去创建一个store,怎么创建呢,非常的简单,在src下面创建一个文件夹,这个文件夹名字就叫做store,里面有个index.js,reducer.js index.js import { createStore } from 'redux'; // 创建store的时候需要把笔记本传递给store import reducer from './reducer'; /** * window.

C# CreateDataAdapter 创建 DbDataAdapter,以及用DataTable的Load方法获取数据

ADO.NET中 有了DbConnection,就可用DbConnection的CreateCommand 创建DbCommand,BeginTransaction创建DbTransaction 可以十分方便的实现工厂模式,操作不同的数据库. 但是唯独DbDataAdapter这个重要的对象无法通过DbConnection或DbCommand来创建,也无法实例化,必须使用SqlDataReader这种明确的类来创建实例,导致 获取数据 的方法不能在基类实现 以下是两个解决办法: 1.只有我们自己

python数据库操作常用功能使用详解(创建表/插入数据/获取数据)

实例1.取得MYSQL版本 # -*- coding: UTF-8 -*- #安装MYSQL DB for python import MySQLdb as mdb con = None try: #连接mysql的方法:connect(host='localhost',user='root',passwd='root',db='test',port=3306) con = mdb.connect('localhost', 'root', 'root', 'test'); #所有的查询,都在连接

从SQLite获取数据完成一个产品信息展示

在ios实际开发当中,我们常常用到Core Data做为数据储存首选.但在处理一些大量复杂的数据值且数据之间相互关联的时候,这就不得不使用关系型数据库来实现.例如一个导航程序,自身应该包含大量的地图自身数据并且数据需要在app启动的时候就开始读取加载.而且数据本身变动不是特别频繁.重复向服务器发送请求获取信息是一件十分浪费的事情.因此我们可以用一个本地数据文件来直接配置.做为轻量级关系型数据库的sqlite是ios开发首选.而xcode本身包含了sqlite库,因此在ios使用的时候不需要额外配

volley源码解析(四)--CacheDispatcher从缓存中获取数据

从上一篇文章我们已经知道,现在要处理的问题就是CacheDispatcher和NetworkDispatcher怎么分别去缓存和网络获取数据的问题,这两个问题我分开来讲. 但是首先说明的是,这两个问题其实是有联系的,当CacheDispatcher获取不到缓存的时候,会将request放入网络请求队列,从而让NetworkDispatcher去处理它: 而当NetworkDispatcher获得数据以后,又会将数据缓存,下次CacheDispatcher就可以从缓存中获得数据了. 这篇文章,就让

Android:解决客户端从服务器上获取数据乱码的方法

向服务器发送HTTP请求,接收到的JSON包为response,用String content = EntityUtils.toString(response.getEntity(),"utf-8");解码还是出现了中文乱码,在后面加了 String name = new String(response.getBytes("iso-8859-1"), "UTF-8"); 也无济于事.想到服务器好像是用URLENCODER编了码的,怀着试一试的态度

js源码 模仿 jquery的ajax的获取数据(get,post )的请求封装

function ajax(obj){ // 默认参数 var defaults = { type : 'get', data : {}, url : '#', dataType : 'text', async : true, success : function(data){console.log(data)} } // 处理形参,传递参数的时候就覆盖默认参数,不传递就使用默认参数 for(var key in obj){//把输入的参数与设置的默认数据进行覆盖更新 defaults[key]

Ajax 获取数据代码

无刷新获取字符串: Html网页中: <script> //定义异步对象 var xmlHttp; //封装方法 function CreateXMLHTTP() {   try {            xmlHttp = new XMLHttpRequest();        } catch (e) {  xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");      } } window.onload = functio

通过XMLHttpRequest和jQuery两种方式实现ajax(即无刷新页面获取数据)

一.XMLHttpRequest实现获取数据 不使用jQuery实现页面不刷新获取内容的方式,我们这里采用XMLHttpRequest原生代码实现:js代码如下: //1.获取a节点,并为其添加Oncilck响应函数document.getElementsByTagName("a")[0].onclick = function(){ //3.创建一个XMLHttpRequest(); var request = new XMLHttpRequest(); //4.准备发送请求的数据ur