我已经使用grunt buildpack成功设置了我的 heroku 应用程序。当我将我的 Node.js 应用程序推送到 heroku 时,它将运行适当的 grunt 任务。
我想要的是使用“grunt-contrib-compass”包来编译我的 .scss 文件。但这需要指南针可执行文件,我不知道如何获得它。
我已经检查了 heroku 文档,并看到了一个过时的文档,描述了使用 ruby 设置指南针......但我还没有看到任何最近使用 Node.js 设置它的文档。
有任何想法吗?
我已经使用grunt buildpack成功设置了我的 heroku 应用程序。当我将我的 Node.js 应用程序推送到 heroku 时,它将运行适当的 grunt 任务。
我想要的是使用“grunt-contrib-compass”包来编译我的 .scss 文件。但这需要指南针可执行文件,我不知道如何获得它。
我已经检查了 heroku 文档,并看到了一个过时的文档,描述了使用 ruby 设置指南针......但我还没有看到任何最近使用 Node.js 设置它的文档。
有任何想法吗?
这花了很多时间弄清楚,但我终于设法让它工作了。需要的是让 Ruby 与您的 Node.js 应用程序一起安装,这样您就可以安装适当的 gem。这个要点很有帮助,或多或少地描述了我需要做的事情。
总而言之,这个过程是:
.buildpacks、Gemfile和,其内容如下:Gemfile.lock.buildpacks
https://github.com/heroku/heroku-buildpack-ruby.git
https://github.com/heroku/heroku-buildpack-nodejs.git
宝石文件
source "http://rubygems.org"
gem "sass"
Gemfile.lock
GEM
remote: http://rubygems.org/
specs:
sass (3.4.5)
PLATFORMS
ruby
DEPENDENCIES
sass
注意。我只使用 Sass,而不是 Compass,但我猜你需要做的就是添加gem "compass"到 Gemfile,例如。compass (1.0.3)下面是 Gemfile.lock 中的 sass。
向您的应用添加多构建包:
heroku config:add BUILDPACK_URL=https://github.com/ddollar/heroku-buildpack-multi.git
最后,将这些推送到 Heroku,Ruby 和 Sass 应该与您的 Node.js 应用程序一起安装,允许您使用与 sass 相关的 grunt 任务。
有一个分叉,包括指南针安装。这可能会有所帮助:
https://github.com/stephanmelzer/heroku-buildpack-nodejs-grunt-compass
我让我的应用程序在 heroku 上运行,grunt-sass 而不是grunt-contrib-sass. 要将它们换掉,只需执行npm install --save grunt-sass然后换掉 grunt-task 使用的任何地方(例如
grunt.loadNpmTasks('grunt-sass'),而不是grunt.loadNpmTasks('grunt-contrib-sass')