我正在使用shakapacker https://github.com/reactjs/react-rails,我遇到了这个错误,尽管遵循了shakapacker入门部分的所有步骤,我不知道为什么会发生这种情况,任何帮助都是感激的
配置/导入Map. rb
# Pin npm packages by running ./bin/importmap
pin "application", preload: true
pin "@hotwired/turbo-rails", to: "turbo.min.js", preload: true
pin "@hotwired/stimulus", to: "stimulus.min.js", preload: true
pin "@hotwired/stimulus-loading", to: "stimulus-loading.js", preload: true
pin_all_from "app/javascript/controllers", under: "controllers"
app/javascript/application.js
import "@hotwired/turbo-rails"
import "controllers"
误差图像
1条答案
按热度按时间c86crjj01#
您混淆了概念。
Shakapacker
和Import Maps
是构建前端的两种不同方法。package.json
中定义。所以首先,你需要选择一个选项来构建你的前端代码(你可以混合使用这两个选项,但是如果你不清楚它们是如何工作的,那就太麻烦了)。如果你只需要“Hotwire”而不想要任何复杂的东西(三次震动,热重载,...),
importmap-rails
解决方案更简单,也是推荐的方法。还有第三个选项(我的🙋雄性️更喜欢的一个):https://github.com/rails/jsbundling-rails。使用js bundler(esbuild、webpack或rollup)并依靠Rails资产管道(Sprockets)将插件插入应用程序是一个小的层/粘合代码。如果您想看一个这样的示例,前一段时间我发布了一个现成的模板:https://github.com/ralixjs/rails-ralix-tailwind .