我如何通过Nuxt.js生成动态使用v-if?

问题描述 投票:0回答:1

[如果我编写了此.vue文件,则在运行nuxt generate命令时将解析v-if。但是我想使用动态v-if。我怎样才能做到这一点?

<template>
  <div v-if="foo()"></div>
</template>

<script>
export default {
  methods:{
    foo:function(){ 
      /*
      this method return boolean. 
      now, this is called at `nuxt generate
      but I want to run this when user visit page` 
      */ 
    }
  }
}
</script>
javascript vue.js nuxt.js
1个回答
1
投票

我认为您应该使用名为'mount'的vue生命周期。创建一个名为“ isMounted”的数据,并将其设置为true。

data() {
  return {
    isMounted: true
  }
}

然后在html中将其用作:

<div v-if="isMounted"></div>

然后按如下所示在已安装的生命周期中更改其值:

mounted(){
 this.isMounted = this.foo();
}
© www.soinside.com 2019 - 2024. All rights reserved.