虚拟DOM
DOM是html的文档对象,那么什么是虚拟DOM呢?
虚拟DOM就是Vue支持的在js中写数据,然后传递给html,看个例子
代码语言:javascript复制<script setup>
import { ref } from 'vue';
const blog = ref({
title: "Vue教程",
content: "虚拟DOM"
});
</script>
<template>
<div>
{{ blog.title }}
{{ blog.content }}
</div>
</template>
<style scoped>
</style>
运行项目可以看见:
我们在script代码中定义数据,然后在template代码中用{{ }}来绑定数据,这就是虚拟DOM的实现了,它可以减少我们的代码量,前端往往有很多相同的块,使用传统前端时我们需要一个个去写,而使用虚拟DOM我们就只需要写一遍,然后绑定就行
模块
Vue还有一种减少代码的方式,就是定义模块,创建如下两个文件:
App.vue文件
代码语言:javascript复制<script setup>
import { ref } from 'vue';
//导入模板
import BlogPost from "./components/BlogPost.vue";
const blog = ref({
title: "Vue教程",
content: "Vue模板"
});
</script>
<template>
//绑定数据
<BlogPost v-bind="blog">
</BlogPost>
</template>
<style scoped>
</style>
BlogBost.vue文件
代码语言:javascript复制<template>
<div>
<h1>
<a>{{ title }}</a>
</h1>
<article>
<div >
{{ content }}
</div>
</article>
</div>
</template>
<script setup>
defineProps(["title", "content"]);
</script>
上面代码中,BlogPost.vue文件就是我们定义的模板,然后在App.vue中引用模板,可以看见,App.vue文件中减少了许多代码
运行代码内容可以正常显示
持续更新...