错误:在部署到Heroku时找不到模块“Cannot find module 'tailwindcss/defaultTheme'”

jdgnovmf  于 2023-04-21  发布在  其他
关注(0)|答案(1)|浏览(205)

我尝试将我的Rails 7应用部署到Heroku,但在Running: rake assets:precompile上失败,并出现错误:Error: Cannot find module 'tailwindcss/defaultTheme' when deploying to Heroku
我试着运行RAILS_ENV=production bundle exec rake assets:precompile,但它没有帮助。
我正在使用gem "tailwindcss-rails", "~> 2.0"将TailwindCSS添加到我的Rails应用程序中。
当我用bin/dev(或者在运行bin/dev后再运行rails s)运行它时,它可以在本地工作。
我是不是错过了关键的一步?
下面是我的tailwind.config.js作为参考。

const defaultTheme = require('tailwindcss/defaultTheme')

module.exports = {
  content: [
    './public/*.html',
    './app/helpers/**/*.rb',
    './app/javascript/**/*.js',
    './app/views/**/*',
    './node_modules/flowbite/**/*.js'
  ],
  theme: {
    extend: {
      fontFamily: {
        sans: ['Inter var', ...defaultTheme.fontFamily.sans],
      },
      colors: {
        primary: "#000000",
        action: "#000000",
        "action-hover": "#000000"
      }
    },
  },
  plugins: [
    require('@tailwindcss/forms'),
    require('@tailwindcss/aspect-ratio'),
    require('@tailwindcss/typography'),
    require('@tailwindcss/container-queries'),
    require('flowbite/plugin')
  ]
}
bf1o4zei

bf1o4zei1#

所以我发现Heroku没有运行npm install,因为它只把它识别为一个Ruby应用程序,所以它只有heroku/ruby buildpack。
我还必须添加herok/nodejs buildpack,这样它才能运行npm install注意:此外,heroku/nodejs buildpack必须位于heroku buildpacks的第一位(命令)
我用heroku buildpacks:add --index 1 heroku/nodejs添加了它,但是要确保它不会覆盖Ruby buildpack,所以如果它覆盖了,就把它加回去。
因此,heroku buildpacks命令最终看起来像这样:

1. heroku/nodejs
2. heroku/ruby

相关问题