javascript - 将 bool 属性传递给 Vue 组件的简写

标签 javascript vuejs2 vue-component

在组件的 Vue 文档中说:

Including the prop with no value will imply true: <blog-post favorited></blog-post>

但是,当我在我的组件上尝试它时,它不起作用(related fiddle):

<!-- html -->
<div id="app">
  <test-component visible></test-component>
</div>

<template id="template">
  <span>open: {{ open }}; visible: {{ visible }}</span>
</template>

<!-- JS -->
const TestComponent = Vue.extend({
  template: '#template',
  props: ['visible'],
  data: function() {
    return { 'open': true }
  }
});

new Vue({
  el: "#app",
  components: {
    'test-component': TestComponent
  }
});

这是错误还是我做错了什么?

最佳答案

我也希望它能按原样工作,但似乎你需要在 props 声明中指定字段类型:

props: {
    'visible': {
        type: Boolean
    }
}

这使它正常工作

关于javascript - 将 bool 属性传递给 Vue 组件的简写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50011269/

相关文章:

javascript - 如何重新运行/重用类构造函数

vue.js - 在 VueJS 中使用第三方组件

vue.js - Vue/Nuxt 页面转换不起作用

javascript - node.js 快速路由中 url 的正则表达式

javascript - 在 jQuery 中扩展 $fn 命名空间

javascript - 如何根据百分比机会运行 IF JS 逻辑?

vue.js - 如何在没有CORS错误的情况下在Vue CLI中加载JSON

javascript - 将任意数量的具有不同宽度的元素对齐到带有环绕的网格

javascript - 将变量作为全局变量存储在 ajax 响应中并用于发送其他 ajax 请求?

javascript - 如果元素单击 vue 组件,我如何添加类事件?