首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查道具是否存在于Vue中?

如何检查道具是否存在于Vue中?
EN

Stack Overflow用户
提问于 2018-11-25 07:11:43
回答 2查看 7.6K关注 0票数 4

我有这样一个组件:

代码语言:javascript
复制
<vue-component show></vue-component>

如您所见,有一个show道具。我不能使用typeof,因为它始终是undefined,因为没有价值。请帮帮我!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-11-25 07:14:40

那么,您将在模板中使用如下内容:

代码语言:javascript
复制
<div v-if="show">
...
</div>

如果您需要在脚本中检查,您可能知道如下:

代码语言:javascript
复制
if(this.show) {

和,

代码语言:javascript
复制
typeof show // will always be undefined

因为道具也可以使用this访问。

代码语言:javascript
复制
typeof this.show // will return Boolean as you're just passing show
// which is simply like `:show="true"`
票数 5
EN

Stack Overflow用户

发布于 2020-07-21 03:22:15

作为Bhojendra Rauniyar答案的增编,您可能应该将默认值设置为false:

代码语言:javascript
复制
Vue.component('my-component', {
  //props:['show'] <--- Wont work
  props: {
      'show': { 
          type: Boolean, 
          default: false
       } 
  },  
  template: `<div>show is: {{show}}</div>`
})

new Vue({
  el: '#app',
})
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
  <my-component show></my-component>
</div>

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53465416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档