javascript - vue 使用component 动态组件为什么不成功
问题描述
1.为什么使用component 动态的添加组件没有成功,
<template>
<component @showHide='recieveAddData' :is='addModal' ></component> <button @click='switchComponent'></button>
</template>import modal from ’./company/modal.vue’export default {
name: ’addItem’,data () { addModal: ’modal’},methods: { switchComponent () { this.addModal = ’first’},components: { modal, first: { template: '<p>这里是子组件3</p>' }}
}
为什么组件first是可以动态的添加上的,为什么引入的modal 组件不行呢?
问题解答
回答1:modal不是最开始的组件吗..是mounted时候无法加载modal.点了button之后反而可以加载first ?
还有一点.data正确写法是需要返回一个对象
data() { return {}}回答2:
import modal from ’./company/modal.vue’;export default {name: ’addItem’,methods: { switchComponent () { this.addModal = ’first’},computed:{ addmodal:modal },components: { first: { template: '<p>这里是子组件3</p>' }}}
你在components中的modal去掉,addModal的值写成modal,而不是’modal’;
相关文章:
1. html - 移动端radio无法选中2. html - IOS二维码识别问题3. mysql - 这条联合sql语句哪里错了4. javascript - vue-resource如何终止之前的ajax请求?5. mysql - 数据库JOIN查询6. python - 用scrapy-splash爬取网站 为啥iframe下的内容没有被返回7. 我设置的背景怎么显示不出来8. mysql - 数据库建字段,默认值空和empty string有什么区别 1109. 关于Navicat连接到mysql,我改了root的密码后,Navicat连接报错1862?10. 正则表达式 - python pandas的sep参数问题
