如何根据含羞草中的构建配置文件将变量传递给coffeescript

时间:2015-03-13 17:42:08

标签: coffeescript global-variables preprocessor mimosa

我有一个典型的含有脚本coffeescript的含羞草前端项目。我希望某个变量(api路径)具有不同的值,具体取决于构建配置文件(dev或prod)。我怎样才能在含羞草中实现这一目标?

我想要的例子:

prod.coffee:

exports.api = 'myserver'

dev.coffee:

exports.api = 'localhost'

api-accessor.coffee

config = getCurrentConfig(); # this is the part I do not know how to implement
exports.getStuff = () ->
  # here I want config.api to have different values depending on build profile
  $.ajax config.api + 'getStuff'

2 个答案:

答案 0 :(得分:1)

您可以将环境变量放在构建配置文件中。

因此,请使用exports.api = "localhost"而不是process.env.api = "localhost"

然后,当使用该配置文件时,这些变量将附加到env并可在任何地方访问。

我们如何解决这类问题。

答案 1 :(得分:1)

我设法通过编写一个简单的含羞草plugin来实现我想要的。 有了它,我可以写

/%= api %/

并将其替换为config中的值。