Vue.js简单的状态管理和 Vuex的几个核心概念使用。
由于状态零散地分布在许多组件和组件之间的交互中,大型应用复杂度也经常逐渐增长。
- 如果多层组件嵌套使用,传递prop,和事件emit。都很不方便。
- 不方便对数据的修改进行历史记录。影响后续的调试!
为了解决这个问题,Vue 提供 vuex。
vuex 甚至集成到 vue-devtools,无需配置即可进行时光旅行调试。
Vuex
前置知识:理解什么是component!
组件就是函数。编程就是通过组织小的函数们来解决问题!类似组件!
于是问题就成为:如何传递arguments, 组件是怎样和它的环境互动的?
就像parameters和返回函数中的值。
在Vue中我们使用props来传递data到组件和组件事件,来和周边环境交互。
prop例子
message prop从父组件传递到子组件,通过一个template。
//childrenComponent
{
props: ['message'],
created(){
console.log(message)
},
template: '<div>{{ message }}</div>'
} // Parent Component
{
template: `<child-component message="'hello'"></child-component>`,
components: { childrenComponent }
}
event例子(见链接) 主要使用$emit方法和v-on
一个问题:
这是很好的移动数据的办法。只是有一个组件的问题:当嵌套3+层时,交互成了困难。
你不得不传递数据从组件A到B,然后从B到C,等等。 反向events, C emits to B, B to A等等。
于是使用state进行状态管理出现了,但这有缺陷,所以出现了Vue, 往后看
Vue.js简单的状态管理和 Vuex的几个核心概念使用。的更多相关文章
- vue(23)Vuex的5个核心概念
Vuex的核心概念 Vuex有5个核心概念,分别是State,Getters,mutations,Actions,Modules. State Vuex使用单一状态树,也就是说,用一个对象包含了所 ...
- Vue.js简单的应用
1:一个简单实现 下面代码部分: <body> <div id="myDiv1"> {{userName}} </div> </body& ...
- 98、vue.js简单入门
本篇导航: 介绍与安装 vue常用指令 一.介绍与安装 vue是一套构建用户界面的JAVASCRIPT框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层, ...
- 13、vue.js简单入门
本篇导航: 介绍与安装 vue常用指令 一.介绍与安装 vue是一套构建用户界面的JAVASCRIPT框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层, ...
- vue.js简单添加和删除
这只是个简单的添加和删除,没有连接后台数据的 <%@ page language="java" contentType="text/html; charset=UT ...
- Vue.js简单入门
这篇文章我们将学习vue.js的基础语法,对于大家学习vue.js具有一定的参考借鉴价值,有需要的朋友们下面来一起看看. Vue.js是一个数据驱动的web界面库.Vue.js只聚焦于视图层,可以很容 ...
- Vue.js简单记录
官网:https://cn.vuejs.org/ https://cn.vuejs.org/v2/api/#methods v-bind 缩写 <!-- 完整语法 --> <a v- ...
- VUE.js 简单引用
Vue开发的两种方式:静态资源引入开发 和 脚手架交互式开发 这里使用的是静态资源引入开发 首先 引用jquery.js 和 vue.js html 标签内加个 <div id=" ...
- Vue.js简单实践
直接上代码,一个简单的新闻列表页面(.cshtml): @section CssSection{ <style> [v-cloak] { display: none; } </sty ...
随机推荐
- topcoder srm 695 div1 -3
1.称一个串的子串(连续一段)为$same$当且仅当这个子串所有字符都一样.子串不同当且仅当在原串中的起始位置不同.现在构造一个长度为$n$的只包含字符'a','b'的串$s$,使得$s$满足长度为$ ...
- shell中使用echo输出时如何指定颜色
答: 请看下图:
- Docker 安装Hadoop HDFS命令行操作
网上拉取Docker模板,使用singlarities/hadoop镜像 [root@localhost /]# docker pull singularities/hadoop 查看: [root@ ...
- P1829 [国家集训队]Crash的数字表格 / JZPTAB
推式子太快乐啦!虽然我好蠢而且dummy和maomao好巨(划掉) 思路 莫比乌斯反演的题目 首先这题有\(O(\sqrt n)\)的做法但是我没写咕咕咕 然后就是爆推一波式子 \[ \sum_{i= ...
- Derek解读Bytom源码-P2P网络 地址簿
作者:Derek 简介 Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchain/bytom ...
- 常用的 Linux 命令
列出文件列表:ls [参数 -a -l]创建目录和移除目录:mkdir rmdir用于显示文件后几行内容:tail打包:tar -xvf打包并压缩:tar -zcvf查找字符串:grep显示当前所在目 ...
- Gym 100247I Meteor Flow(优先队列)
https://vjudge.net/problem/Gym-100247I 题意:有一艘飞船,现在有n颗流星坠落会攻击到飞船,每颗流星会在t时刻降落,对飞船造成d的伤害,飞船会有一个保护盾,初始值为 ...
- BZOJ 1061: [Noi2008]志愿者招募(线性规划与网络流)
http://www.lydsy.com/JudgeOnline/problem.php?id=1061 题意: 思路: 直接放上大神的建模过程!!!(https://www.byvoid.com/z ...
- 原生js总结
数据类型 基本类型值包括: undefined,null,Boolean,Number和String,这些类型分别在内存中占有固定的大小空间,它们的值保存在栈空间,我们通过按值来访问的. 引用类型包括 ...
- Mac python 2.X 升级到 3.X
Mac OS X10.9默认带了Python2.7,不过现在Python3.3.3出来了,如果想使用最新版本,赶紧升级下吧.基本步骤如下. 第1步:下载Python3.3 下载地址如下: Python ...