我需要在特定类型的构建期间有条件地导入文件。使用grunt-contrib-jshint@0.7.0
which is on the topless@1.4.2
到目前为止我尝试过的...
尝试使用受保护的 mixin 来确定我需要的构建类型,即跳过某些在开发模式下中断的较少文件的导入。
@isProduction: 1;
...
.getImports() when (@isProduction = 1){
}
.getImports() {
@import "productionStyles";
}
...
.getImports();
但是,这似乎失败了,它一直在尝试导入和解析productionStyles.less
。我猜受保护的 mixins 没有涵盖@import
,那么您将如何解决呢?
我也试过
@productionStyles: "productionStyles"; // or 0
...
@productionStyles: 0;
.getImports() when not (@productionStyles = 0){
@import "@{productionStyles}";
}
...
同样有效,它无论如何都会尝试导入它>> FileError: '0.less' wasn't found in ...
。
我开始认为它需要一个更大的重构 wheredevStyles
并且productionStyles
两者都是一个东西,我只是在它们之间切换 - 只是 productionStyles 是一个添加,由于 deps 只能在完整构建后编译,我宁愿通过解决这个问题有条件地编译。
我也可以不使用grunt-contrib-jshint
并编写自己的 less 解析器,但想先探索内置选项。
由于productionStyle.less
引用了几个不在文件系统中的文件,是否可以忽略@imports
那些失败并继续构建?由于其他地方可能出现解析器错误,我不希望禁用所有错误的错误检查/中断...