在webpack中,当加载器应用于某些文件时,例如:
require("style-loader!css-loader!less-loader!./my-styles.less");
他们从右到左工作。
对我来说,这看起来很奇怪,技术原因是什么?
答案 0 :(得分:2)
我认为注意管道和作曲之间的区别非常重要。在* nix环境中,您可以从左到右管道命令:
cat file.txt | egrep cars > output.txt
但在函数式编程中,您可以将函数组合在一起,函数将从右到左执行:
var fn0 = compose(divide(2), add(3));
var fn1 = pipe(add(3), divide(2));
fn0和fn1对输入的影响相同。两者都将首先在其输入中添加3并将该操作的输出除以2.因为我们自然地从左到右阅读,所以撰写约定需要一些熟悉。
在我看来,Webpack遵循了从右到左排序的组合与管道的惯例。查看Ramda的技术规范文档: