今天小编给大家分享一下Vue怎么通过浏览器控制台查看全局data值的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
发现很多通过Vue-Cli创建的具体页面在定义data后,export时,多半没有对象(直接页面),如下:
export default { data() { return { locale, labelCol: { span: 2 }, wrapperCol: { span: 20 }, other: "", form: { name: "", goodsType: undefined, goodsTime: undefined, delivery: false, type: [], goodsDesc: "", }, ... },
这样,我们在浏览器中没有对外的对象,怎么获取data值,确实令人抓头...
方法,解助,created方法,在该方法中定义一个myData全局对象实例并指向当前对象this,来获取实例.并通过windows暴露给全局,代码如下:
created() { window.myData = this;//将变量全局化,这样浏览器可以查看当前data是什么情况::myData._data },
这样,在浏览器控制台,直接使用myData对象就可以获取到值,获取data值,通过myData._data
传统的html形式引用vue可以通过给最外层的vue实例命名方式.这种方式,就比较直接简单了,可直接通过该实例直接获取.
var myapp=new Vue({ el:'#app', data:{ a:1 } })
获取值:在控制台输入myapp.a=2改变里面data的值,这样在浏览器控制台调试很方便
1.浏览器控制台获取到的是当前值
当我们在console.log输出测试点开查看是否有值时,发现明明有值,代码使用时却获取不到,这是因为浏览器获取的是该参数当前的值,而不是你console.log输出时的值。
可以发现当我们在对展开之前又给它push一个值后,展开的是最新的数据而不是调用它时的数据,这点在你展开时浏览器其实有说明,不过大家平时可能没注意。
2.vue this指向发生改变
这严格来说不属于该情况,不过也经常是我这种小白容易忽略的地方,就放在一起了,方便自己以后查阅。
在使用例如setTimeout等(不知道还有没有,我目前记得这一个)函数时,this的指针指向不再指向vm,而是会指向Windows,因此在setTimeout中使用this时会赋值不上,可以在方法内使用setTimeout之前重新定义一个参数将this保存下来。
异步请求
如axios、ajax发送请求时是异步的,因此在发送请求后立即调用想要返回的信息可能为空,但是当我们在控制台展开时接口数据返回完成,又能查看到数据了。可以选择停用异步或用setTimeout增加一定的延时。
以上就是“Vue怎么通过浏览器控制台查看全局data值”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。