我如何实现打孔Autoprefixer预处理器?
我想为Punch静态站点生成器实现自动修复器预处理器。
然而,在Punch的说法,我不知道这是否有资格作为编译器,缩小等。我已经尝试了所有上述无济于事。
这是我最近的尝试:
./autoprefixer.js
module.exports = { input_extensions: [".css"], force_compile: true, compile: function(input, filename, callback){ return callback(null, "*{color: red;}"); } };
config.json
... "plugins": { "compilers": { ".css": "punch-sass-compiler", ".css": "autoprefixer" } } ...
result
/home/peter/projects/website/node_modules/punch/lib/asset_bundler.js:62 if (compiler && compiler.input_extensions.indexOf(template_extension) > -1) ^ TypeError: Cannot read property 'indexOf' of undefined at /home/peter/projects/website/node_modules/punch/lib/asset_bundler.js:62:45 at /home/peter/projects/website/node_modules/punch/lib/template_handler.js:119:11 at fs.js:334:14 at /home/peter/projects/website/node_modules/punch/node_modules/fstream/node_modules/graceful-fs/graceful-fs.js:42:10 at FSReqWrap.oncomplete (fs.js:95:15)
任何人都可以把我引向正确的方向吗?
目前看来,punch编译器只能编译一个不同的扩展名(比如说.mycss
或者.less
)。 使用这个,你几乎在那里:
在module.exports
, input_extensions:
必须设置为你想要的扩展名(不是.css
),例如[".mycss"]
。
"plugins": { "compilers": { ".css": "punch-sass-compiler", ".css": "autoprefixer" } }
真的很奇怪,因为你定义了两次相同的密钥。 删除punch-sass-compiler
行。 如果你想调用另一个编译器,只require
在你的编译器的代码中调用它的模块,调用另一个编译器并修改你提供的输出。
冲压缩小器不适合你的目标,因为他们只涉及到生产( punch g
),而不是在开发时。