v-if在VueJS组件上

时间:2018-07-26 07:06:32

标签: vue.js vuejs2 vue-component nuxt.js

需要一个简单的快速修复方法,当.env中的NODE_ENV不是“ production”时,我想在VueJS页脚上显示“ DEVELOPMENT”标签。请帮忙。

<template>
    <footer class="app-footer font-xs" v-if="process.env.NODE_ENV !== 'production'">
        <span>© 2018 <b>PT Test</b>. All Rights Reserved.</span>
        <span class="ml-auto">DEVELOPMENT</span>
    </footer>
    <footer v-else class="app-footer font-xs">
        <span>© 2018 <b>PT Test</b>. All Rights Reserved.</span>
    </footer>
</template>

我的.env文件

NODE_ENV=local
TZ=Asia/Jakarta

2 个答案:

答案 0 :(得分:3)

所有Vue模板表达式都是根据组件上下文进行评估的。

将条件添加到组件的data对象

data () {
  return {
    isProduction: process.env.NODE_ENV === 'production'
  }
}

并使用

v-if="!isProduction"

答案 1 :(得分:2)

如果需要使用,请检查是否可以在多个地方生产

Vue.prototype.$isProductionEnv = process.env.NODE_ENV === 'production'

然后在每个组件中都将像这样可用。$ isProductionEnv因此

<div v-if="$isProductionEnv">Your contente</div>