vue.js - vue 什么时候用this?
本文介绍了vue.js - vue 什么时候用this?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
场景描述:
最近使用vue-router写路由的时候突然发现一个问题。html里面使用this.routerParams时获取不到响应的值,但是使用routerParams可以正常获取到值。我就想问为什么这里使用this.routerParams我为什么得到的是undefined?
html:
js
解决方案
首先,你需要分清楚在Vue中的两种值的形式:模板和表达式。
模板:格式为
{{...}}
,模板本身的类型,可以认为是字符串,但是可以被模板的解析器展开成可以识别的内容。
表达式:可以直接执行的代码,也就是说基本上与JS代码并无二致,只是所有的方法和数据都省略this
。
在Vue的HTML代码中,:to
其实是v-bind:to
数据绑定的简写。数据绑定后面的值,是表达式。所以,对于表达式,和JS写法一致,只是所有的this
全被省略。
而你下面watch
部分属于JS内容,所以需要this
。
如果你在:to
里写this
,由于表达式本身省略this
,所以实际上你调用的是this.this
值。
这篇关于vue.js - vue 什么时候用this?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文