Vue中el是什么

el类型:string | Element
提供一个在页面上已存在的 DOM 元素作为 Vue 实例的挂载目标。可以是 CSS 选择器,也可以是一个 HTMLElement 实例。

代码如下:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8" />
		<title>分析生命周期</title>
		<!-- 引入Vue -->
		<script type="text/javascript" src="../js/vue.js"></script>
	</head>
	<body>
		<!-- 准备好一个容器-->
		<div id="root" :x="n">
			<h2 v-text="n"></h2>
			<h2>当前的n值是:{
    
    {
    
    n}}</h2>
			<button @click="add">点我n+1</button>
			<button @click="bye">点我销毁vm</button>
		</div>
	</body>

	<script type="text/javascript">
		Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。

		new Vue({
    
    
			el:'#root',
			data:{
    
    
				n:1
			},
			methods: {
    
    
				add(){
    
    
					console.log('add')
					this.n++
				},
				bye(){
    
    
					console.log('bye')
					this.$destroy()
				}
			},
	
		})
	</script>
</html>

上面的意思相当于将vue挂载到id为root的Dom元素上,此时整个绿色框都是模板。包括外边的div。

在这里插入图片描述
结果如下:
在这里插入图片描述

其实我们的容器中可以什么都不写,使用模板template,此时template中的内容替换d整个容器,但是一般不这么写。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8" />
		<title>分析生命周期</title>
		<!-- 引入Vue -->
		<script type="text/javascript" src="../js/vue.js"></script>
	</head>
	<body>
		<!-- 准备好一个容器-->
		<div id="root" :x="n">
			
		</div>
	</body>

	<script type="text/javascript">
		Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。

		new Vue({
    
    
			el:'#root',
			 template:`
			 	<div>
			 		<h2>当前的n值是:{
     
     {n}}</h2>
			 		<button @click="add">点我n+1</button>
			 	</div>
			 `,
			data:{
    
    
				n:1
			},
	
		})
	</script>
</html>

有个细节:
在这里插入图片描述
这种方式是绿色替换红色,页面最终是没id为div的容器的。

猜你喜欢

转载自blog.csdn.net/qq_42931285/article/details/129578182