vue.js将一个对象的所有属性作为prop进行传递


1、方法一:使用不带参数的v-bind写法

<div id="app"> 
  <child v-bind="todo"></child>
</div>

  v-bind中没有参数,而组件中的props需要声明对象的每个属性

Vue.component('child', { 
  props: ['text','isComplete'],
  template: '<span >{{ text }}  {{isComplete}}</span>' 
})
new Vue({
  el: '#app',
  data: {
    todo: {
      text: 'Learn Vue',
      isComplete: false
    }
  }
})

  显示效果如下

  

2、方法二:使用带参数的v-bind写法

<div id="app"> 
  <child v-bind:todo="todo"></child>
</div>

  v-bind后跟随参数todo,组件中的props需要声明该参数,组件变可以通过todo来访问对象的属性

Vue.component('child', { 
  props: ['todo'],
  template: '<span >{{ todo.text }}  {{todo.isComplete}}</span>' 
})
new Vue({
  el: '#app',
  data: {
    todo: {
      text: 'Learn Vue',
      isComplete: false
    }
  }
})

  显示效果如下

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM