繁体   English   中英

如何使gulp-jade将'export'添加到生成的函数中?

[英]How do I make gulp-jade add 'export' to the generated function?

我使用Jade编写所有HTML,并将它们保存在单独的文件中,包括一些注入到jQuery中的小片段,作为对事件的响应。 这些位必须在client: true插入本地变量,因此我将gulp-jade与client: true一起使用,然后尝试直接在Webpack中使用这些功能。

问题是我无法导入它们。 我主要使用ES6(通过babel-loader转换),但是requireJS当然也可以工作。

我目前解决此问题的方法是永远不会自动运行gulp-jade,而只有在进行更改时才手动运行它,然后在文件的开头手动添加“ export”。

当然,这种方法有效,但是首先,我不记得运行gulp-jade,直到看到生成的错误为止;其次,每当我运行gulp-jade时,它都会覆盖每个文件(即使更改了gulp),因此我必须为所有这些添加“导出”。

我没有在Gulp之外使用Vinyl Streams的经验,所以我不知道该怎么做,但是我知道我可以运行stream =+ 'export ' + stream ,但是最好有一个gulp-plugin识别源文件中的所有可导出元素,并根据ES6或RequireJS标准(取决于选项)将其导出。

看来这样的事情应该存在,全面有用,但我找不到!

是否存在? 在等待比我聪明的人来创建它时,是否可以使用一种简单的技巧?

最终成为解决方案,直接来自我的gulpfile:

gulp.task('jade: fix', ['jade: compile'], plugins.shell.task([
  'for file in *.js;do { printf \'export \'; cat $file; } >$file.new;mv $file.new $file;done'
], {cwd: process.cwd() + '/src/lib/nodes/templates'}));

plugins.shell.task = gulp-shell

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM