将变量传递给coffeescript
在命令行中,如何将变量传递给coffeescript,以便它可以替换相应的占位符,如下所示:将变量传递给coffeescript,coffeescript,Coffeescript,在命令行中,如何将变量传递给coffeescript,以便它可以替换相应的占位符,如下所示: $ echo "module.exports = {version: '$VERSION'}" | coffee -p -s VERSION=0.0.0 预期JS: (function() { module.exports = { version: '0.0.0' }; }).call(this); 谢谢你两件事: 您需要在echo中定义VERSION,而不是在coffeesc
$ echo "module.exports = {version: '$VERSION'}" | coffee -p -s VERSION=0.0.0
预期JS:
(function() {
module.exports = {
version: '0.0.0'
};
}).call(this);
谢谢你两件事:
- 您需要在echo中定义
,而不是在coffeescript编译器中;当coffeescript编译器看到它时,它已经被翻译成VERSION
$VERSION
是一个内置的shell,因此标准的echo
构造不起作用VERSION=0.0.0echo“$VERSION”
$ (VERSION=0.0.0; echo "module.exports = {version: '$VERSION'}" | coffee -ps)
(function() {
module.exports = {
version: '0.0.0'
};
}).call(this);
表达式周围的括号阻止设置版本:
$ echo $VERSION
$
好吧,我的例子可能太简单了。。。你的把戏很管用,但它是一个贝壳而不是咖啡。如果我想编译一个完整的文件夹:
coffee-c-o lib/src/
,但是使用VERSION=0.0.0
,所以$VERSION
占位符被替换在src/
中的某个地方,该怎么办?单凭谢意是不会帮你的。讨论了可以在咖啡之前或之后运行的预处理器。