Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Vuejs:如何正确地将道具传递到组件数据_Javascript_Vue.js - Fatal编程技术网

Javascript Vuejs:如何正确地将道具传递到组件数据

Javascript Vuejs:如何正确地将道具传递到组件数据,javascript,vue.js,Javascript,Vue.js,我正在使用Vue 2.0,但有一些不清楚的地方。。 如何将道具传递到组件的内部数据? 看一下文档,似乎我做得对 HTML <lista-servizi :servizi="modello"></lista-servizi> “modello”是一个已经定义的数据 VUE组件 Vue.component('lista-servizi', { template: '<span class="blu">{{listaServizi.lineaGialla.

我正在使用Vue 2.0,但有一些不清楚的地方。。 如何将道具传递到组件的内部数据? 看一下文档,似乎我做得对

HTML

<lista-servizi :servizi="modello"></lista-servizi>

“modello”是一个已经定义的数据

VUE组件

Vue.component('lista-servizi', {
 template:
 '<span class="blu">{{listaServizi.lineaGialla.descrizione}}</span>',
    props: ['servizi'],
    data: function(){
    return{
       listaServizi : this.servizi
    }
Vue.component('lista-servizi'{
模板:
“{listaServizi.lineaGialla.descripione}”,
道具:['servizi'],
数据:函数(){
返回{
listaServizi:这个,servizi
}
基本上,我试图给数据列表aservizi提供与道具servizi相同的值, 但在控制台中,我有以下消息:

[Vue warn]: Error in render function: "TypeError: Cannot read property 'descrizione' of undefined"

found in

---> <ListaServizi>
       <Root>
[Vue warn]:呈现函数中的错误:“TypeError:无法读取未定义的属性“Descriptione”
发现于
---> 

您应该使用
computed

Vue.component('lista-servizi', {
  //...
  computed: {
    listaServizi() {
      return this.servizi
    }
  }
}

您应该使用
computed

Vue.component('lista-servizi', {
  //...
  computed: {
    listaServizi() {
      return this.servizi
    }
  }
}

您很可能对modello有问题。 通过定义modello,您的代码可以正常工作。下面是一个基于您的代码的示例:

<div id="app-1">
<lista-servizi :servizi="modello"></lista-servizi>
</div>



Vue.component('lista-servizi', {
  template: '<span class="blu">{{listaServizi.lineaGialla.descrizione}}</span>',
  props: ['servizi'],
  data: function(){
    return{
     listaServizi : this.servizi
    }
  }
})

var app1 = new Vue({
 el: '#app-1',
 data: {
 modello: { 
  lineaGialla : {
    descrizione : " This is a description"
    }
  }
}
})

Vue.组件('lista-servizi'{
模板:{{listaServizi.lineaGialla.descripione}},
道具:['servizi'],
数据:函数(){
返回{
listaServizi:这个,servizi
}
}
})
var app1=新的Vue({
el:“#app-1”,
数据:{
modello:{
莱纳吉亚拉:{
描述:“这是一个描述”
}
}
}
})
这里有一个指向工作垃圾箱的链接
您很可能对modello有问题。 通过定义modello,您的代码可以正常工作。下面是一个基于您的代码的示例:

<div id="app-1">
<lista-servizi :servizi="modello"></lista-servizi>
</div>



Vue.component('lista-servizi', {
  template: '<span class="blu">{{listaServizi.lineaGialla.descrizione}}</span>',
  props: ['servizi'],
  data: function(){
    return{
     listaServizi : this.servizi
    }
  }
})

var app1 = new Vue({
 el: '#app-1',
 data: {
 modello: { 
  lineaGialla : {
    descrizione : " This is a description"
    }
  }
}
})

Vue.组件('lista-servizi'{
模板:{{listaServizi.lineaGialla.descripione}},
道具:['servizi'],
数据:函数(){
返回{
listaServizi:这个,servizi
}
}
})
var app1=新的Vue({
el:“#app-1”,
数据:{
modello:{
莱纳吉亚拉:{
描述:“这是一个描述”
}
}
}
})
这里有一个指向工作垃圾箱的链接

似乎是合法的!但现在我有另一个问题…在控制台中,我有一个Vue warn]:属性或方法“listaServizi”未在实例上定义,而是在渲染过程中引用。请确保在数据选项中声明被动数据属性。如果您使用的是与我编写的完全相同的
computed
,可能会有问题(并从
数据
中删除
listaServizi
),这不应该是个问题。就像在“是的,我的错误!”中,它可以在浏览器中渲染,但在控制台中,我始终有相同的消息…这应该是浏览器问题吗?这很奇怪,你能编辑问题以编写组件中的代码吗?该警告不应该出现。不,我不能回答我自己的问题,但我有这个fiddle:似乎是合法的!但现在我有另一个问题…在控制台中,我有一个Vue warn]:属性或方法“listaServizi”未在实例上定义,而是在渲染期间引用。请确保在数据选项中声明反应数据属性。如果您使用的是与我编写的完全相同的
computed
,则可能是错误的(并从
数据
中删除
listaServizi
),这不应该是个问题。就像在“是的,我的错误!”中,它可以在浏览器中渲染,但在控制台中,我始终有相同的消息…这应该是浏览器问题吗?这很奇怪,你能编辑问题以编写组件中的代码吗?该警告不应该出现。不,我不能回答我自己的问题,但我有这个fiddle:谢谢你们的帮助,但我确信“modello”工作正常,如果我在组件外部声明它,它工作正常谢谢你们的帮助,但我确信“modello”工作正常,如果我在组件外部声明它,它工作正常