vue安装vuex框架
1.安装vuex
npm install vuex --save-dev
2.创建store
src下创建stores文件夹,创建noteStore.js
import Vue from 'vue';
import Vuex from 'vuex';
Vue.use(Vuex); //vuex初始化 let note = new Vuex.Store({
state:{ //存储空间
items:[],
name:'张三',
say:'hello'
},
mutations:{ //事件响应,修改存储的方法集
changeName:function(state,data){
state.name = data.name;
},
changeSay:function(state,data){
state.say = data.say;
},
changeItem:function(state,data){
state.items = data;
}
}
}); export default note
3.创建action
创建actions文件夹,创建noteAction.js
import note from '../stores/note'
export function changeName(id){
alert(id);
//commit抛出事件,mutations中响应对应的事件changeItem
note.commit('changeItem',[{id:1,name:'张三',say:'hello'},{id:2,name:'李四',say:'你好'},{id:3,name:'王五',say:'哈哈'}]);
};
4.创建getter,获取事件方法
文件夹getdatas,创建noteGetter.js方法
import note from '../stores/note'
export function getShow(vuea){
//默认传入所在的vue对象
//alert(note.state.name);
return note.state.items;
}
5.界面渲染
<template>
<div id="app" class="app">
hello,note
<table border='1' align='center'>
<tr v-for="item in items">
<td>{{item.id}}</td>
<td>{{item.name}}</td>
<td>{{item.say}}</td>
</tr>
</table>
<button @click='changeName'>改名</button>
</div>
</template>
<script>
import note from '../stores/note'
import {getShow} from '../getdata/getter'
import {changeName} from '../actions/Action' export default {
computed:{ //items无须在data中声明,getShow传入的参数是this(vue对象)
items:getShow
},
methods:{
changeName:function(){
changeName(1);
}
}
}
</script>
vue安装vuex框架的更多相关文章
- 【09】Vue 之 Vuex 数据通信
9.1. 引言 Vue组件化做的确实非常彻底,它独有的vue单文件组件也是做的非常有特色.组件化的同时带来的是:组件之间的数据共享和通信的难题. 尤其Vue组件设计的就是,父组件通过子组件的prop进 ...
- Vue基于vuex、axios拦截器实现loading效果及axios的安装配置
准备 利用vue-cli脚手架创建项目 进入项目安装vuex.axios(npm install vuex,npm install axios) axios配置 项目中安装axios模块(npm in ...
- vue 安装及使用
一, vue.js 2.0 1, cnpm install vue-cli -g 全局安装 2, 运行vue查看安装是否成功(创建vue-cli目录: vue init webpack demo) ...
- 一步一步教你用 Vue.js + Vuex 制作专门收藏微信公众号的 app
一步一步教你用 Vue.js + Vuex 制作专门收藏微信公众号的 app 转载 作者:jrainlau 链接:https://segmentfault.com/a/1190000005844155 ...
- 搭建项目vue + vue-router + vuex + vue-i18n + element-ui + egg + sequelize
vue + vue-router + vuex + vue-i18n + element-ui + egg + sequelize https://www.cnblogs.com/wuguanglin ...
- 【原创】从零开始搭建Electron+Vue+Webpack项目框架,一套代码,同时构建客户端、web端(二)
摘要:上篇文章说到了如何新建工程,并启动一个最简单的Electron应用.“跑起来”了Electron,那就接着把Vue“跑起来”吧.有一点需要说明的是,webpack是贯穿这个系列始终的,我也是本着 ...
- 十、Vue:Vuex实现data(){}内数据多个组件间共享
一.概述 官方文档:https://vuex.vuejs.org/zh/installation.html 1.1vuex有什么用 Vuex:实现data(){}内数据多个组件间共享一种解决方案(类似 ...
- Vue 2.0 + Vue Router + Vuex
用 Vue.js 2.x 与相配套的 Vue Router.Vuex 搭建了一个最基本的后台管理系统的骨架. 当然先要安装 node.js(包括了 npm).vue-cli 项目结构如图所示: ass ...
- 前端笔记之Vue(一)初识SPA和Vue&webpack配置和vue安装&指令
一.单页面应用(SPA) 1.1 C/S到B/S页面架构的转变 C/S:客户端/服务器(Client/Server)架构的软件. C/S 软件的特点: ① 从window桌面双击打开 ② 更新的时候会 ...
随机推荐
- 删除rime输入法
mac: 首先将输入法从偏好设置-键盘-输入源中去除,添加系统的输入法. 然后执行命令: $ killall Squirrel $ sudo rm -Rf "/Library/Input M ...
- Unable to load native-hadoop library for your platform(已解决)
1.增加调试信息寻找问题 2.两种方式解决unable to load native-hadoop library for you platform 附:libc/glibc/glib简介 参考: 1 ...
- win7与vbox虚拟机Ubuntu设置共享文件夹
1.进入Ubuntu系统,在右上角打开设备->安装增强功能->运行->输入密码 2.在终端中安装,安装完后重新启动Ubuntu 3.在本机中设置一个共享文件夹(文件名是vbox-sh ...
- gulp插件之-----转化es6代码到es5 取消严格模式 remove "use strict" directive
Installation npm install babel-plugin-transform-remove-strict-mode && yarn add babel-plugin- ...
- 原生MapReduce开发样例
一.需求 data: 将相同名字合并为一个,并计算出平均数 tom 小明 jerry 2哈 tom tom 小明 二.编码 1.导入jar包 2.编码 2.1Map编写 package com.wzy ...
- 2018.7.19 AK22 续集
话说上次坏机检查没有找到问题,后来我们联合软件工程师一起分析原因 ------------------------ 在线调试: MCU在内部晶振模式下:初始化正常,功能函数正常,切换到外部晶振12M后 ...
- python虚拟开发环境搭建(virtualenv和virtualenvwrapper)
虚拟开发环境的搭建 (0) 搭建虚拟环境的意义 使不同的开发环境独立 环境升级不影响其他开发环境,也不影响全局 防止包管理的混乱 (1) 指定 虚拟环境的创建目录 环境变量设置 创建 WORKON_H ...
- webpack里CommonJS的require与ES6 的module.exports加载模块有何不同
只需明白commonjs的规则即可,import会被转化为commonjs格式的,babel默认会把ES6的模块转化为commonjs规范的. import vue from 'vue'; //等价于 ...
- UOJ #55 & 洛谷 P3920 紫荆花之恋 —— 动态点分治+替罪羊树
题目:http://uoj.ac/problem/55 https://www.luogu.org/problemnew/show/P3920 参考博客:https://www.cnblogs.com ...
- PyCharm 2017.2.2+PyQt5+Python3.6.0
PyCharm注册地址 http://idea.imsxm.com/ 安装的是miniconda激活虚拟环境执行pip install PyQt5pip install PyQt5-tools 从官网 ...