服务器之家:专注于服务器技术及软件下载分享
分类导航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服务器之家 - 编程语言 - JavaScript - 解决vue props传Array/Object类型值,子组件报错的情况

解决vue props传Array/Object类型值,子组件报错的情况

2021-11-08 16:02linefate JavaScript

这篇文章主要介绍了解决vue props传Array/Object类型值,子组件报错的情况,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

问题:

props with type object/array must use a factory function to return the default value.

1、在vue中如果当在父组件通过props传array/object类型值给子组件的时候

2、如果子组件的props接收default为 ,如下

解决vue props传Array/Object类型值,子组件报错的情况

报错

解决vue props传Array/Object类型值,子组件报错的情况

原因:props default 数组/对象的默认值应当由一个工厂函数返回

解决:

解决vue props传Array/Object类型值,子组件报错的情况

补充知识:vue的props如何传多个参数

 

vue父作用域将数据传到子组件通过props进行传参,如果需要传多个参数可以数组形式赋值给props,通过这样子组件就可以获取父组件传体过来的多个参数了。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<div id="app">
 <ul >
 <todo-item v-for="(item,index) in arr" v-bind:todo="item" v-bind:index="index"></todo-item>
 </ul>
</div>
<script type="text/javascript" src="js/vue.js" ></script>
<script>
    vue.component("todo-item",{
   props:['todo','index'],
 template:"<li>{{index}}:{{todo.text}}</li>"
 })
 var app = new vue({
   el:"#app",
   data:{
 arr: [ { text: '学习 javascript' }, { text: '学习 vue' }, { text: '整个牛项目' } ]
 }
 })
</script>

以上这篇解决vue props传array/object类型值,子组件报错的情况就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/Nalaluky/article/details/82746875

延伸 · 阅读

精彩推荐