Open ystarlongzi opened 9 years ago
require(xxx)
语句。这个 index.vm 里面都是走的 #require 所以没有依赖信息。
你试试
<!--
@require '/static/css/css1.css'
@require '/static/css/css2.css'
@require '/static/css/css3.css'
-->
@2betop 恩,可以的。谢谢!
@2betop 我还有一个疑问,比如现在又多了如下目录:
-- widget
-- header
-- index.vm
-- index.js
-- index.css
然后widget/header/index.vm
里的内容如下:
<!--
@require 'index.less'
-->
<div class="header">header</div>
修改page/index/index.vm
内容如下:
.......
<!--
注释:
记引入 widget/header/index.vm 插件,这个插件这里的 css 不会被打包进去嘛?
-->
#widget('widget/header/index.vm')
.......
<!--
@require 'widget/header/index.vm'
-->
不过我不建议你这么去用,为何不在 pack 里面去配置详细的打包列表,而要借助这种静态的依赖方式去粗鲁的打包?
@2betop 嗯嗯,谢谢!
我是这么理解的,比如page/index/index.vm
,引入了几个 widget,部分代码如下:
........
#widget('widget/a/index.vm')
#widget('widget/b/index.vm')
#widget('widget/c/index.vm')
#widget('widget/d/index.vm')
#widget('widget/e/index.vm')
........
考虑这样的场景:
那么通过哪种方法就可以不用再修改配置文件,jello 会给自动打包嘛。我是这样想的。。
我觉得你不能依靠页面的静态分析依赖来自动打包,要从全站角度去分析,哪些资源应该合并在一起,然配置详细的 pkg 列表。
fis.config.set(pack', {
'pkg/common.js': [
'static/1.js',
'static/2.js',
'static/3.js',
]
})
depsCombine 这个插件只是把分析到的静态资源合并加入进来,还是节省一些麻烦。
推荐看看这块关于打包的说明。
https://github.com/fex-team/fis/issues/488#issuecomment-101989042
@2betop 恩,谢谢。。想明白了些。
假设目录规范如下:
fis-conf.js
文件内容如下:page/index/index.vm
文件内容如下:jello release -p
后,/WEB-INF/config/map.json
内容如下:其中
pkg
字段为空对象,并没有把page/index/index.vm
里依赖的文件给打包