vue.js - 使用 "v-if"指令时,控制台出现错误。无限循环

标签 vue.js compiler-errors vuejs2 syntax-error warnings

当我使用 v-if 后,我的控制台中出现 [Vue warn],不知道如何解决这个问题。 [Vue 警告]:组件渲染函数中可能存在无限更新循环。

<template>
  <div class="example-component">
      <div class="spinner-box" v-if="loadComplete = !loadComplete">
        <div class="spinner-inner">
          <i class="fas fa-circle-notch fa-spin"></i>
        </div>
      </div>
  </div>
</template>

<script>
export default {
  name: 'ExampleComponent',
  data () {
    return {
      loadComplete: false
    }
  }
</script>

最佳答案

改变

v-if="loadComplete = !loadComplete"

v-if="!loadComplete"

例子

https://2ozkjp4vyp.codesandbox.io/

Edit Vue Template

<template>
    <div id="app">
        <img width=200 src="./assets/logo.png">
        <div class="loader" v-if="!loadComplete"></div>
        <div v-else>
            <p>asynchronous data from firebase</p>
            <button @click="loadDataFromFirebase">Reload</button>
        </div>
    </div>
</template>

<script>
    export default {
    name: 'app',
        data: () => ({
            loadComplete: false
        }),
        mounted () {
            this.loadDataFromFirebase()
        },
        methods: {
            loadDataFromFirebase () {
                this.loadComplete = false
                setTimeout(() => {
                    this.loadComplete = true
                }, 1000)
            }
        }
  }
</script>

关于vue.js - 使用 "v-if"指令时,控制台出现错误。无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48716886/

相关文章:

vue.js - 有没有办法在 VueJS 中从父级触发组件方法?

python - aiohttp request.multipart() 从浏览器上传文件中得不到任何结果

c++ - 使用 Clion 的 C++ 简单程序 "expected ` ,' or ` .. .' before ' & &' token"

vue.js - Vuejs : shared states between components

jquery - 无法初始化 bootstrap-datepicker

c - 如何修复 "error: expected ; , or ) before"字符串参数

java - 如何在命令行中为 Tomcat 编译 servlet?错误 : package javax. servlet 不存在

javascript - 如何在vue js的更新页面中选择类

javascript - 如何将 forEach 循环中的字符串合并到数组

javascript - vue.js调用外部js函数进行搜索