我正在尝试在元素中使用语句:
v-if="currentstep < maxStep"
maxStep应该从我的默认导出
中列出的组件数量中获取 export default {
name: 'step',
data () {
return {
maxStep: 8,
currentstep: 0
}
},
components: {
ConfigPublicador,
ConfigServico,
ModeloReceita,
Integracoes,
ConfigTema,
ConfigApp,
ConfigExtras,
Assets,
Revisao
}
}
像
这样的东西maxStep = components.length
任何想法? 感谢
答案 0 :(得分:1)
这绝对是代码味道。但是,您可以通过Object.keys(this.$options.components).length
获得该值。
以下是一个例子:
const Foo = {
template: '<div></div>',
}
new Vue({
el: '#app',
components: { Foo },
data() {
return {
count: 0,
}
},
created() {
this.count = Object.keys(this.$options.components).length;
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.4.4/vue.js"></script>
<div id="app">
<div v-if="count > 0">
There is at least one component
</div>
</div>