如何解决Rails Zeitwerk`JavaScript的常量名称错误
使用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
此错误的原因是什么?
解决方法
您要将JavaScript放置在Zeitwork渴望在生产环境中加载的目录中。将JS移动到特定于资产的目录(例如Sprockets的app / assets或Webpacker的app / javascript),或将Rails配置为忽略它:
# config/application.rb
Rails.autoloaders.main.ignore(Rails.root.join('app/path/to/dir'))
,
我最近在目录名称中包含连字符时遇到了rails / webpacker问题。
这些有效: webpacker / images / img.jpg webpacker / images / photos / img.jpg
这导致了错误 webpacker / images / compound-word / img.jpg
我没有时间深入了解它,所以我只是将其更改为 webpacker / images / compoundword / img.jpg
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。