动态组件、异步组件

1、动态组件
父组件

<template>
	<div class="no_study_report">
		<component :is="testDemoVmodelComponent" />
	</div>
</template>

<script>
import testDemoVmodel from "@/components/testDemoVmodel";
export default {
	name: "noStudyReport",
	components: {
		testDemoVmodel,
	},
	data() {
		return {
			testDemoVmodelComponent: "testDemoVmodel",
		};
	},
};
</script>

<style scoped lang="scss">
.no_study_report {
	font-size: 30px;
}
</style>
子组件

```javascript
<template>
	<input type="text" />
</template>
<script>
export default {};
</script>

<style scoped lang="scss"></style>

2、异步组件
1、import()函数;
2、按需加载,异步加载大组件。
父组件
```javascript
<template>
	<div class="no_study_report">
		<testDemoVmodel v-if="modelBool"></testDemoVmodel>
		<button @click="handleShowComponent">显示动态组件</button>
	</div>
</template>

<script>
export default {
	name: "noStudyReport",
	components: {
		testDemoVmodel: () => import("@/components/testDemoVmodel"),
	},
	data() {
		return {
			modelBool: false,
			testDemoVmodelComponent: "testDemoVmodel",
		};
	},
	methods: {
		handleShowComponent() {
			this.modelBool = true;
		},
	},
};
</script>

<style scoped lang="scss">
.no_study_report {
	font-size: 30px;
}
</style>

子组件

<template>
	<div class="model_text">
		<input type="text" />
		我是动态组件
	</div>
</template>
<script>
export default {};
</script>

<style scoped lang="scss"></style>

我们刷新页面后没有看到子组件的代码,只有在点击显示动态组件按钮后就好异步加载出来

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值