形如上述做法,在methods里定义的函数btnClick(),如果用箭头函数的写法,this指向的将会是 windows ,并且windows根本访问不到data属性中返回的数据 undefined

我们来解释两个问题

this的指向?

首先 在箭头函数中 this引用的是 定义箭头函数的上下文 (官方话语),我们来思考一下,定义btnClick()函数的究竟是什么,是全局上下文也就是 Windows, 因为无论是 methods:{} 还是 Vue.createApp({}) ,他们都是 一个对象 ,不是一个单独的作用域,所以这里的this是指向的Windows

为什么不能用箭头函数形式?

因为counter变量储存在 data属性 中,而data与methods不同的是, data实质上是一个函数 ,也就是说data拥有单独的作用域,外部windows自然无法访问到

Vue methods 里面不可以 使用 箭头函数 vue methods 不可以 使用 箭头函数 ,因为this指向的不是 vue 实例, 使用 箭头函数 打印this,发现是undefined methods : { test: () => { console.log(this); // undefined 箭头函数 没有this,this其实是外部的this,即 箭头函数 体内的this对象,就是 定义 时所在的对象,而不是 使用 时所在的对象。所以 箭头函数 的this是固定的, 不能 改变或者重
Vue 里面 methods 对象里面如果 使用 箭头函数 会导致this指向不是 vue 实例,而是一个xxx.a的一个类,尽量不要在 vue 定义 的字段里面 使用 箭头函数 。 由此可见, vue 的自带方法 使用 箭头函数 会出现各种错误,慎用!!! 例子:想写一个点击事件:点击输入框的“x”,即可清空文本框的内容 首先为输入框增加一个ref属性(ref=“inputUser”),然后为“x”加一个点击事件(@click=“deleteInp”) methods 使用 普通 函数 methods : { deleteInp : func...
vue 一个完整的生命周期过程,我们可以得知生命周期的三个过程:初始化、运行 、销毁 共有八个钩子 函数 ,如下。 ● beforeCreate( ) { } ● created( ) { } ● beforeMount( ) { } ●mounted( ) { } ● beforeUpdate( ) { } ● updated( ) { } ● beforeDestroy( ) { } ● destroyed( ) { } 生命周期钩子的 this 上下文指向调用它的 Vue 实例。 生命周期钩子函
Vue ,data选项用于 定义 组件实例的初始数据。通常情况下,我们可以将data选项 定义 为一个对象,其 包含所有数据属性及其初始值。但是,有时候我们需要为每个组件实例提供一个独立的数据副本,以避免组件之间相互影响。为了实现这一点,我们可以 使用 一个 函数 定义 data选项。 使用 函数 式的data选项有两个好处: 1. 每个组件实例都会调用一次这个 函数 ,返回一个新的数据对象,从而避免了组件之间共享数据的问题。 2. 函数 式的data选项可以访问组件实例的属性,例如props和 methods ,从而可以动态地设置数据属性的初始值。 因此, 使用 函数 式的data选项是一种更加灵活和安全的方式来 定义 组件的初始数据。
Vue - 解决子组件中修改props值报错(error Unexpected mutation of “---“ prop vue/no-mutating-props) weixin_58309708: 怎么改啊 我按上面说的没弄好啊...