页面中一个元素内嵌套deals组件,前端根据后端返回固定字段替换成组件,但是页面中没加载出来。
!
页面中一个元素内嵌套deals组件,前端根据后端返回固定字段替换成组件,但是页面中没加载出来。
!
使用v-html这种方式是不能加载组件的!其实你的功能也就是常规的父子组件传值,只用注意生命周期就可以实现啦;
在父组件中加载子组件时候的顺序为:父组件created→父组件beforeMounted→子组件created→子组件beforeMounted→子组件mounted→父组件mounted;
如果我没有理解错的话:
<template>
<div>
<!-- 导入组件 -->
<component v-bind:is="content" :post_info="info"></component>
</div>
</template>
<script>
import question from "./question.vue";
export default {
data() {
return {
content: '',
info: ''
}
},
components: {
question
},
created() {
this.content = 'question'
//更改这个值
this.info = '111'
},
};
</script>
子组件
<template>
<div>
子组件sdd
</div>
</template>
<script>
export default{
props:['post_info'],
mounted() {
console.log('child_msg',this.post_info)
},
}
</script>
8 回答4.7k 阅读✓ 已解决
6 回答3.4k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
5 回答6.3k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决
3 回答2.5k 阅读✓ 已解决
你这样写组件渲染是不对的。或许
render
构建一下可以。我之前处理富文本的时候写过一个类型的。
处理字符串为对象
'111111222111111111'
变成[{type:1,value:'111111'},{type:2,value:'222'},{type:1,value:'111111111'}]
v-for
遍历传入子组件