Javascript 什么';将Brunch配置为从一个模板文件输出多个HTML/JS文件的正确方法是什么?
这是我的情况-我有多个广告单位创建,每个不同的大小和不同的动画 我正在尝试运行一个早午餐观察服务器来处理以下内容:Javascript 什么';将Brunch配置为从一个模板文件输出多个HTML/JS文件的正确方法是什么?,javascript,node.js,configuration,npm,brunch,Javascript,Node.js,Configuration,Npm,Brunch,这是我的情况-我有多个广告单位创建,每个不同的大小和不同的动画 我正在尝试运行一个早午餐观察服务器来处理以下内容: 执行一些预处理(即:使用TexturePacker发布CSS/LESS和PNG atlas) 将app/assets/index.html的内容复制到临时文件/缓冲区(因为它使用了一些{{{handle bar like}}占位符标记来替换每个文件的配置) 替换广告宽度、高度、边框宽度、边框高度、标题和文件名等的占位符标记 将特定于该广告的JS和CSS(位于app/en_???x
- 执行一些预处理(即:使用TexturePacker发布CSS/LESS和PNG atlas)
- 将app/assets/index.html的内容复制到临时文件/缓冲区(因为它使用了一些
占位符标记来替换每个文件的配置){{{handle bar like}}
- 替换广告宽度、高度、边框宽度、边框高度、标题和文件名等的占位符标记
- 将特定于该广告的JS和CSS(位于
)与临时文件/缓冲区内联(这将在template index.html文件的相应注释行中粘贴JS和CSS)app/en_???x???etc/
- 执行一些后期处理(即:字符串替换/清理等)
module.exports
对象之前,我可以在brunch config.js
中放一些代码吗(或者在定义配置之前,将其放在配置文件需要的单独文件中(…)
那么,如何定义预处理和后处理调用呢?我知道早午餐前和早午餐后都存在beforebunch
和afterBrunch
,但我不确定是在每个index.html文件复制之前和之后调用它,还是在复制所有内容之前和之后调用它(如果有意义的话)。为了使事情变得更复杂,每个前处理和后处理调用可能需要稍微不同,以便为每个JS、CSS、atlas.png输出提供文件名
我已经用Haxe实现了类似的设置(在本例中,Haxe充当了命令行伙伴),但是如果我可以缩小这个工作流的范围,只使用NodeJS/NPM模块,那么在与客户共享项目时,我的客户的生活就会轻松得多
谢谢 这里有早午餐。是的,您可以在早午餐配置中删除代码
beforeBrunch/afterBrunch
插件用于运行shell命令。如果您想运行自己的代码,只需使用早午餐的preCompile
/onCompile
回调即可<在编译/复制任何内容之前调用code>preCompile,onCompile
在编译所有内容并将资产复制到公共文件之后运行
我不确定我是否完全理解您的流程,但这肯定是可能的:
preCompile
回调和/或beforebunch
插件将每个广告的app/assets/index.html
复制到app/something/template.hbs
onCompile
回调和/或afterbunch
插件内联样式表并执行您可能需要的任何其他操作我必须承认,在复杂的工作流场景中,考虑到其过于简单的性质,早午餐本身可能不是表达这些问题的最佳解决方案,但对于大多数常见的前端开发用例来说,它是非常好的。谢谢您的回答。我设法分别在beforebunch/afterBrunch上在之前调用了
节点myscript.js,在
之后调用了节点myscript.js,但我可能需要更多的信息,以便以最少的配置使这项工作更加顺利。如果可能的话,介意我通过电子邮件/Slack与您联系吗?@bigp当然,使用我在GitHub的电子邮件