【发布时间】:2017-04-20 18:39:57
【问题描述】:
我一直在尝试使用 webpack 的 less-loader 自动导入 less 文件,但是 glob 表达式在 root.less 文件中不起作用。
详细来说,我正在用 webpack 替换 gulp builder,我可以使用这种模式:
@import 'widgets/**/*.less';
在 gulp 中自动导入更少的文件(请查看此链接glob expressions)。但是,这种模式在 webpack 中无效,less-loader 似乎也不支持。
我尝试使用require.context webpack的方法,但无法调整顺序或文件导入。因为我使用全局变量(mixins、颜色代码等),所以我需要按逻辑顺序减少文件。因此,此选项也不可用。
import '../components/variables.less';
importAll(require.context('../components/', true, /\.less$/)); // Cannot set a sequence.
// 'Variables' cannot be found even though I added it above
所以,看来我必须手动导入每个文件,这真的很痛苦。这就是为什么我想知道有没有办法自动导入文件?
感谢您的帮助!
【问题讨论】:
-
less-loaderseems 支持 Less 自己的插件,所以很可能你可以使用less-plugin-glob。 -
感谢您的回复!是的,我已经尝试过使用它,但是它会抛出错误github.com/webpack-contrib/less-loader/issues/190。
-
我在这里也发现了类似的问题stackoverflow.com/questions/42629652/…。我实际上有同样的问题。
-
plugin.install 不是函数 - 与this 的错误相同。你在那里错过了
new。 -
嗯,你是对的 - 查看它的来源,我发现它已经返回了一个对象。那么抱歉,我不知道有什么问题(看起来它与
webpackbefore 一起工作得很好)