模块化开发与vue组件

博客介绍了模块化开发,其能保证文件独立,提高性能、便于维护与团队开发,可引入官网或自定义模块,用require()引入,通过npm init -y管理。还提及Vue组件化开发,组件有自己模块,用id关联,使用时需注册到父组件下,可重复使用。

模块化开发是保证每个文件都是独立的模块,不受外界干扰,提高性能,便于后期维护与团队开发。
可以引入官网的模块,也可以自定义模块。

使用require()引入需要使用的模块,自定义的模块在使用之前需要通过module.exports 暴露出去。

通过npm init -y 下载package.json文件管理维护模块,其中 main 为入口文件 ,dependencies 指定项目开发与上线需要的模块 ,devdependeciens  指定项目开发中需要而上线时不需要的模块。

var as=require("aa")            // 自定义的模块,如果要引入的是文件夹名,这个文件夹必须放在node_modules文件夹下入口文件为aa.js
var $=require("jquery")        // 引入官网的模块
var asd=require("./dd.js")     // 引入当前文件下的dd.js文件
var quan=require("./ff")         //没有package.json文件 模块的默认入口文件是index.js

 

vue 组件化开发
每个组件都自己的模块,组件与模块之间用id关联,每个模块只能有一个顶层标签,组件名必须大写开头,不能使用h5标签来命名,组件的data是个函数,每个组件下面的数据只能在它自己对应的模块下使用。如果需要使用此组件,需要将其注册到需要使用的父组件下(components),以标签的形式调用,且可以重复使用。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script src="js/vue.js"></script>
	</head>
	<body>
		<div id="app">
			<heads></heads><!-- 标签形式调用 可以重复使用 -->
			<heads></heads>
		</div>
	</body>
</html>

<template id="tem1">
	<div>                     <!--模板只能有一个顶层标签-->
	     <p>{{cont}}</p>      <!--组件的数据写在模板里-->
	     <mains></mains>
	</div>
</template>

<template id="tem2">
	<div>
	     <h3>{{info}}</h3>
	</div>
</template>


<script>
	let Mains = {              //子组件必须写在父组件前面
		template:"#tem2",
		data:function(){
			return{
				info:"abc"
			}
		}
	};
	
	let Heads = {           //组件名 大写开头 不能使用h5标签
		template:"#tem1",   //模板和组件通过id关联
		data:function(){    //组件的data是个函数 
			return{
				cont:"12345"
			}
		},
		components:{       //注册组件
			mains:Mains
		}
	};
	
	let app = new Vue({
		el:"#app",
		data:{
			msg:"web"
		},
		components:{      //注册组件
			heads:Heads
		}
	});
</script>

  

转载于:https://www.cnblogs.com/guiyh/p/9357265.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值