javascript - 将结果与 vue.js 中更改的值同步

标签 javascript vue.js vuejs2

我编写了如下所示的 .vue 文件以在 100 毫秒后更改 h1#msg

<template>
  <div id="main">
    <h1 id="msg">{{ msg }}</h1>
  </div>
</template>

<script>
export default {
  name: 'Top',
  data () {
    let a=['TEST']
    setTimeout((function(a){a[0]='test'}),100)
    return {
      msg: a
    }
  }
}
</script>
<style>
</style>

但是我不能通过这段代码改变状态。我尝试使用 Array 通过引用传递值。 我不喜欢使用 querySelector(),因为它迫使我在 HTML 中添加态度和方法参数。

最佳答案

不要在data()里面写javascript,正确的是这段代码:

<script>
export default {
  name: 'top',
  data () {
    return {
      msg: 'test'
    }
  }
  mounted() {
    setTimeout(() => this.msg = 'Bu!', 100)
  }
}
</script>

关于javascript - 将结果与 vue.js 中更改的值同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47804616/

相关文章:

JavaScript 在这些语句中会初始化/执行任何内容吗?

javascript - 每次我单击链接以模式打开窗口时,Ajax 调用都会加倍

vue.js - Vue 3 中组织注册Vue全局组件

javascript - Vue.js : How persistent is the data of the state properties in Vuex?

javascript - 当用户单击 Javascript 中的按钮时复制下拉列表

javascript - 为什么组件 props 未定义(vue 路由器)

internet-explorer - Vue.js 严格模式下不允许多个属性定义

javascript - Vue.js、Vuex 与 Promises

javascript - 在Vue模板槽中使用父槽变量

javascript - 我的 JavaScript 代码中的 if 语句出现问题