1、 vuex的数据修改,只能通过action派发mutations执行,
但是对于state数组对象的数据添加,却可以使用 push,直接操作vuex
2、习惯了在老师实现之前先尝试。
遇到一个问题,就是对数组push对象,但是不想让重复对象push。我的第一反应就是写if else 以及遍历原先数据检查对象是否存在,代码如下。
成功了,但是看了老师的实现代码。发觉改变本质才是关键。
不明觉厉,档次飞跃。惭愧惭愧,不学无术,不思进取,陋习,摒弃,努力。
这几行代码引入了ecma新特性 arguments是指向传入数组的新参数, this只带的是调用这个方法或者函数的拥有者。
然后再入口文件main.js import全局注册该方法。
一行代码走天下。需要if else吗?
3、props传递需要时间,this.$nextTick()让dom渲染完再加载函数。
立刻触发refresh,但bottom是传递,通过props接收,无法立刻接收
4、props若是引用(比如数组类型),那么直接改变其中的元素,是正确的操作。但是绝对不能修改其引用(数组本身,对象本身),只能修改其中的元素
5、vue-create-api 能让vue组件通过api方式调用
什么意思呢?
传统的vue组件调用,需要定义组件,引入组件,注册组件,使用组件
四大步骤缺一不可。
接下来就是vue-create-api 的使用与强大之处。
先在main.js中import该模块
注:1、模块Toast起名是根据component的name属性起名的。不可以随便起名。采用帕斯卡命名法。
注:2、当模块注册后,会自动生成一个 createAPI的方法,去全局注册你的组件。
并且扩展一个$createXxx方法。(注Xxx对应的是组件的name)如下:
在组件的方法中,直接调用
先完成dom的创建,再通过组件自身的show()方法显示组件