【发布时间】:2018-02-11 03:19:16
【问题描述】:
我正在尝试在 Vue 中创建自定义组件。
这是我能想到的最简单的组件,value 属性始终未定义。
<template>
<div>
- {{ value }} -
</div>
</template>
<script>
export default {
props: ['value'],
mounted() {
console.log(this.value);
}
}
</script>
当我调用它时没有做任何特别的事情:
<el-text-group v-model="testVar"></el-text-group>
{{ testVar }}
变量testVar 显示正常,但自定义组件没有显示?
我遵循了一堆教程和官方文档:
https://vuejs.org/v2/guide/components.html#Form-Input-Components-using-Custom-Events
我正在使用最新的 Vue 2.4.2。它似乎在 Vue 2.2.x 上运行良好。
实际上我几个月前就遇到过这个问题,但我想我会等着看是否有问题得到解决。但是现在再次测试,问题仍然存在。不知道,好像很基础,不知道怎么做有什么变化?
文件:
app.js
var component = require('./components/App.vue');
component.router = Vue.router;
new Vue(component).$mount('#app');
App.vue
<template>
<div>
Hello
<hr/>
<test-cpt v-model="testVar"></test-cpt>
</div>
</template>
<script>
export default {
data() {
return {
testVar: 'test'
};
},
components: {
testCpt: require('./TestCpt.vue')
}
}
</script>
TestCpt.vue
<template>
<div>
- {{ value }} -
</div>
</template>
<script>
export default {
props: ['value']
}
</script>
【问题讨论】:
-
您希望
value在您发布的代码中包含什么内容? -
不是 Vue 的问题。 codepen.io/Kradek/pen/zdemVW?editors=1010
-
@JaromandaX testVar 显示“测试”就好了,但在自定义组件(输入)中它全部为空并在控制台中显示
undefined。 -
展示你是如何使用组件的。
-
Works fine with webpack 也是如此。我所说的显示它的使用方式是显示你在哪里导入它、注册它等等。本质上是父组件。
标签: javascript vue.js vuejs2 vue-component