Vue变量中以$或者_开头的变量无法访问的问题

Vue变量中以$或者_开头的变量无法访问的问题

今天做项目的时候,使用v-if遇到了一个报错,说的是变量不能用$或者_开头
在这里插入图片描述

Property “_obj” must be accessed with “$ data.obj" because properties starting with “$” or "” are not proxied in the Vue instance to prevent conflicts with Vue internalsSee

查了一下官网,官网在文档里面说的很清楚:

以 _ 或 $ 开头的 property 不会被 Vue 实例代理,因为它们可能和 Vue 内置的 property、API 方法冲突。你可以使用例如 vm.$data._property 的方式访问这些 property。

所以使用_$开头的变量,需要用 $data.xxx xxx是变量名
在结构里面和方法里面都需要

<div id="app">
	<div v-if="$data._num == 1"><div>
	<button @click="click"></button>
<div>

<script>
new Vue({
	e:'#app',
	data:{
		_num:0
	},
	methods:{
		click(){
			this.$data._num = 1
		}
	}
})
</script>
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值