don*_*ald 50 heroku node.js coffeescript
我有一个用CoffeeScript编写的node.js应用程序.
我想知道在Heroku上托管应用程序需要什么.
谢谢
flo*_*ger 117
Michael Blume是对的,你不需要任何额外的代码来在heroku上运行CoffeeScript节点应用程序.我就这样做了:
coffee-script
将当前版本添加到您的依赖项中package.json
.这可能看起来像这样:
{
"name": "My-CoffeeScript-App-on-Heroku",
"version": "0.0.1",
"dependencies": {
"coffee-script": "1.1.2"
}
}
Run Code Online (Sandbox Code Playgroud)
然后在Procfile
使用咖啡而不是节点中修改节点应用程序的条目.对于只有一个Web条目的应用程序,这可能如下所示
web: coffee app.coffee
Run Code Online (Sandbox Code Playgroud)
要测试这是否适用于Heroku,您可以使用foreman gem在localhost上尝试:
$ gem install foreman
$ foreman start
21:13:36 web.1 | started with pid 4711
Run Code Online (Sandbox Code Playgroud)
然后尝试推送到heroku,您将在依赖项安装中看到类似的内容:
-----> Installing dependencies with npm 1.0.8
coffee-script@1.1.2 ./node_modules/coffee-script
jade@0.15.3 ./node_modules/jade
??? mkdirp@0.0.6
??? commander@0.1.0
Run Code Online (Sandbox Code Playgroud)
不确定该程序是否存在问题但是上面描述的方法对我来说似乎有些过分,因为你搞乱了运行时环境的代码.
希望这有助于某人:)
通过在我的依赖项中包含coffeescript然后在我的Procfile中加入'coffee index.coffee',我能够相处得很好
每次服务器启动时都要编译启动成本,但除此之外你应该没问题.
由于 Heroku 的更新,现在允许npm
安装源代码coffee-script
。下面的答案是 Heroku 完全支持之前的解决方法node.js
。目前要获得更好的解决方案,请参阅评价较高的答案,解释如何简单地使用Heroku 上的coffee-script
内容。npm
老实说,最好的方法是coffee -c filename
像彼得建议的那样提前编译它,但我想知道您是否可以有一种“预加载” preload.js
,它将使用coffeescript
thencompile node_module
() 要使用的脚本来调用脚本。这样,您就可以在 heroku 上的节点中本地使用它们,而无需处理存储库中的额外文件。
npm install coffee-script
Run Code Online (Sandbox Code Playgroud)
然后在初始应用程序中,用 JavaScript 编写并*.coffee
使用 Coffee 的编译函数调用文件:
npm install coffee-script
Run Code Online (Sandbox Code Playgroud)
并在yourapp.coffee
尝试
console.log 'It worked!'
Run Code Online (Sandbox Code Playgroud)
我不确定这是否有效,或者这是否是该函数的正确语法。https://github.com/jashkenas/coffee-script/blob/master/lib/coffee-script.js#L24
如果您询问如何在 ruby 中执行此操作,请执行以下操作:
有关如何在 Heroku 上的 Rails 中使用 CoffeeScript 的演练: http://drnicwilliams.com/2010/03/15/using-coffeescript-in-rails-and-even-on-heroku/
它建议使用 bistro_car ( https://github.com/jnicklas/bistro_car )
gem install bistro_car
mkdir -p app/scripts
Run Code Online (Sandbox Code Playgroud)
并将其添加到你的 Rails 中conf/environment.rb
config.gem 'bistro_car'
Run Code Online (Sandbox Code Playgroud)
如果我找到其他东西或另一种方式来本地运行*.coffee
javascript 应用程序,我会更新这个答案,但希望这会给您一些关于如何让它工作的想法。
这里还有几个例子,但它们似乎都使用了 ruby 和 node.js:
http://forrst.com/posts/Doing_CoffeeScript_on_Heroku_a_Ruby_gem-OBk http://www.tangiblecolors.com/first-steps-with-coffeescript-and-how-to-use
希望这会有所帮助。
归档时间: |
|
查看次数: |
10500 次 |
最近记录: |