入口文件: login.js
// login.js的依赖
[
'login.css'
]
// login.css的依赖
[
'account.css'
]
// account.css的依赖
[
'reset.css', //重置样式
'dialog.css', //弹窗
'validator.css' //验证
]
// dialog.css的依赖
[
'reset.css'
]
// reset.css & validator.css 没有依赖
加载顺序处理逻辑
// login依赖account
// 因此第一步的依赖为
var deps = [
'login.css'
]
// 然后login.css的依赖
deps = [
'account.css',
'login.css'
]
// account.css依赖 reset.css, dialog.css, validator.css
// 顺序应该是
deps = [
'reset.css.deps',
'reset.css',
'dialog.css.deps',
'dialog.css',
'validator.css.deps',
'validator.css',
'account.css',
'login.css'
]
// 即依赖顺序为
deps = [
// reset.css.deps为null
'reset.css',
'reset.css', // dialog.css.deps
'dialog.css',
//validator.css.deps为null
'validator.css',
'account.css',
'login.css'
]
// 去重得到最终依赖顺序
deps = [
'reset.css',
'dialog.css',
'validator.css',
'account.css',
'login.css'
]