1

使用 Rails 6

我有一个这样的文件夹app/client/javascript/config/editor/syntax-highlighting

里面有2个文件。

app/client/javascript/config/editor/syntax-highlighting/math-mode.js app/client/javascript/config/editor/syntax-highlighting/units-regex.js

当我部署到生产时,错误消息是:

Wrong constant name Syntax-Highlighting inferred by Module from directory (Zeitwerk::NameError)

它提供了该目录的路径。 app/client/javascript/config/editor/syntax-highlighting

这个错误的原因是什么?

4

2 回答 2

4

您将 JavaScript 放置在 Zeitwork 在生产环境中快速加载的目录中。将 JS 移动到特定于资产的目录(如 Sprockets 的 app/assets 或 Webpacker 的 app/javascript)或将 Rails 配置为忽略它:

# config/application.rb

Rails.autoloaders.main.ignore(Rails.root.join('app/path/to/dir'))
于 2020-08-22T12:53:37.563 回答
1

在我的目录名称中包含连字符时,我最近在使用 rails/webpacker 时遇到了这个问题。

这些工作: webpacker/images/img.jpg webpacker/images/photos/img.jpg

这导致了错误 webpacker/images/compound-word/img.jpg

我没有时间深入了解它,所以我只是将其更改为 webpacker/images/compoundword/img.jpg

于 2020-12-15T22:19:30.230 回答