Javascript Vue.js中未从子组件发送到父组件的数据
下面是子组件和父组件。我无法找出哪里出了问题,但我无法将值数据从子组件传递到父组件。请帮我找出哪里出了问题 子组件Javascript Vue.js中未从子组件发送到父组件的数据,javascript,vue.js,vuejs2,vue-component,vuetify.js,Javascript,Vue.js,Vuejs2,Vue Component,Vuetify.js,下面是子组件和父组件。我无法找出哪里出了问题,但我无法将值数据从子组件传递到父组件。请帮我找出哪里出了问题 子组件 <template> <div> <v-btn class="red-button" @click.prevent="checkAgent('information')"> Information </v-btn> <v-btn clas
<template>
<div>
<v-btn class="red-button" @click.prevent="checkAgent('information')">
Information
</v-btn>
<v-btn class="red-button" @click.prevent="checkAgent('policies')">
Policies
</v-btn>
</div>
</template>
<script>
export default {
data: function () {
return {
}
},
methods: {
checkAgent(value) {
this.$emit('navigate', value);
},
}
};
</script>
<template>
<v-layout row wrap>
<v-flex xs12 sm12 lg12 >
<div class="account-section">
<Details @navigate="moveTo(value)"/>
</div>
</v-flex>
</v-layout>
</template>
<script>
import Details from 'views/agent/edit.vue';
export default {
components: {
Details,
},
data: function () {
return {
}
},
methods: {
moveTo(value) {
console.log(value)
},
},
};
</script>
问询处
政策
导出默认值{
数据:函数(){
返回{
}
},
方法:{
检查代理(值){
此.$emit('navigate',值);
},
}
};
父组件
<template>
<div>
<v-btn class="red-button" @click.prevent="checkAgent('information')">
Information
</v-btn>
<v-btn class="red-button" @click.prevent="checkAgent('policies')">
Policies
</v-btn>
</div>
</template>
<script>
export default {
data: function () {
return {
}
},
methods: {
checkAgent(value) {
this.$emit('navigate', value);
},
}
};
</script>
<template>
<v-layout row wrap>
<v-flex xs12 sm12 lg12 >
<div class="account-section">
<Details @navigate="moveTo(value)"/>
</div>
</v-flex>
</v-layout>
</template>
<script>
import Details from 'views/agent/edit.vue';
export default {
components: {
Details,
},
data: function () {
return {
}
},
methods: {
moveTo(value) {
console.log(value)
},
},
};
</script>
从“views/agent/edit.vue”导入详细信息;
导出默认值{
组成部分:{
细节,
},
数据:函数(){
返回{
}
},
方法:{
移动到(值){
console.log(值)
},
},
};
您应该调用发出的事件处理程序,而无需在模板中指定参数:
<Details @navigate="moveTo"/>
您应该调用发出的事件处理程序,而不在模板中指定参数:
<Details @navigate="moveTo"/>
从中,您可以使用$event
访问发出的事件的值
如果事件处理程序是一个方法,并且没有指定任何参数,Vue将将发出的值作为该方法的第一个参数传递
所以对于你来说
一个补丁将是
另一个补丁将与@Boussadjra Brahim的答案相同
下面是第一个修复程序的一个简单演示:
Vue.component('sidebar'{
模板:`
单击时增量
`
})
新Vue({
el:“#应用程序”,
数据:{
增量:0
},
方法:{
GetUpdate:函数(newVal){
this.increment+=newVal
}
}
})
{{increment}}
从中,您可以使用$event
访问发出事件的值
如果事件处理程序是一个方法,并且没有指定任何参数,Vue将将发出的值作为该方法的第一个参数传递
所以对于你来说
一个补丁将是
另一个补丁将与@Boussadjra Brahim的答案相同
下面是第一个修复程序的一个简单演示:
Vue.component('sidebar'{
模板:`
单击时增量
`
})
新Vue({
el:“#应用程序”,
数据:{
增量:0
},
方法:{
GetUpdate:函数(newVal){
this.increment+=newVal
}
}
})
{{increment}}
您似乎没有注册父模板中使用的详细信息
组件。这是打字错误吗?@YomS。打字错误。请查收now@YomS. 在moveTo方法中,值抛出错误属性或方法“值”未在实例上定义,但在呈现过程中被引用。您似乎没有注册父模板中使用的详细信息
组件。这是打字错误吗?@YomS。打字错误。请查收now@YomS. 在moveTo方法中,值抛出错误属性或方法“value”未在实例上定义,但在呈现期间引用。不客气,您必须注意,模板中的值被视为未定义,并作为未定义的值再次传递给处理程序。不客气,您必须注意,模板中的值被视为未定义,并作为未定义的值再次传递给处理程序