Skip to content

入口文件

为了方便,这里先解释一下入口文件的概念,这个概念在前端模块化中还是比较重要的,不管是用什么模块化规范,基本都绕不开这个概念。

简单点说,入口文件就是在HTML直接引用的,由浏览器触发执行的JS文件。其它的非入口文件则是由入口文件来直接或间接依赖,由JS互相调用执行。举个简单的例子:

index.html:

html
<html>
	<head>
		<script src="main.js"></script>
	</head>
	<body>
	</body>
</html>
<html>
	<head>
		<script src="main.js"></script>
	</head>
	<body>
	</body>
</html>

main.js

javascript
var a = require('./a');
var b = require('./b');

a.doSth();
b.doSth();
var a = require('./a');
var b = require('./b');

a.doSth();
b.doSth();

这个例子中,main.js由HTML直接引用,是整个程序逻辑开始的地方,因此是入口文件,而被引用的ab则是由main.js引入和调用,因此不是入口文件。

一般而言,我们会将一些逻辑提取封装后放到独立的文件中,最后由入口文件引入来调用它们提供的方法完成整个程序逻辑。也就是一般入口文件关注整体流程,而非入口文件关注公共某一部分的实现。