likes
comments
collection
share

在vue的模版中和react的一些小区别

作者站长头像
站长
· 阅读数 277

今天在学习vue的过程中,遇到了一个小问题,在vue的模版<template>标签中无法直接调用windows对象身上的方法,而react中可以,感觉这个问题还挺容易遇到的,来记录一下。


首先React先看下面的简单的代码,

在vue的模版中和react的一些小区别

实现的页面如下:

在vue的模版中和react的一些小区别

点击按钮可以在控制台看到

在vue的模版中和react的一些小区别

接下来是Vue

代码如下,首先就会看到 @click事件绑定就出现了报错。

在vue的模版中和react的一些小区别

页面如下

在vue的模版中和react的一些小区别

当我们点击按钮的时候,控制台会提示,找不到log这个属性或者方法。

在vue的模版中和react的一些小区别

直接说结论,在vue的template里都是使用了vue实例中或者Vue构造函数身上的属性和方法,当你在template里调用console.log方法时候,它会去vm(假设vm=new Vue())这个实例对象身上找console.log这个方法,结果没有,那么就回去vm__proto__原型对象身上找,那肯定也没有。

如果要用怎么办呢?

可以在<script>标签中拿到window对象,然后自己使用。

在vue的模版中和react的一些小区别

至于为什么,目前对我来说还得继续学习Vue才可以下定论。