ruby-on-rails 在rails 7中的“@hotwired/turbo-rails”有一些问题

8aqjt8rx  于 2023-01-18  发布在  Ruby
关注(0)|答案(1)|浏览(250)

您可以将路径“@hotwired/turbo-rails”标记为external以将其从包中排除,这将消除此错误。
这是错误,我想知道如何标记这个路径为外部.

qvtsj1bj

qvtsj1bj1#

此错误消息表明“@hotwired/turbo-rails”软件包导致您的软件包出现问题。
1.解决此错误的一种方法是将软件包标记为外部,这将从捆绑包中排除该软件包并防止错误发生。

  • 您可以通过修改Webpack配置文件来实现这一点,该文件很可能位于Rails应用程序的config/webpack文件夹中。
  • 在配置文件中,您应该会发现一个名为“externals”的部分,它用于定义应该从bundle中排除的包。

您可以将“@hotwired/turbo-rails”添加到外部列表中,如下所示:

externals: {
  "@hotwired/turbo-rails": "commonjs @hotwired/turbo-rails"
}

1.或者[我通过以下更改解决了我的问题]

  • 您可以使用Webpacker的add_externals方法在

配置/网络包/环境. js文件

const { environment } = require('@rails/webpacker')

environment.addExternals({
  "@hotwired/turbo-rails": "commonjs @hotwired/turbo-rails"
})
module.exports = environment

请确保在对配置文件进行更改后重新启动开发服务器,以使更改生效。
解决这个问题的另一个方法是检查包是否安装了,如果是正确的版本,你可以使用yarlist或者npm list来检查安装的包的版本。
如果程序包版本不正确或与应用程序不兼容,则应将其卸载,然后安装与应用程序兼容的正确版本。
也有可能不再需要该包,或者您使用的是与当前Rails版本不兼容的过时方法。在这种情况下,您可能需要考虑将其从应用程序中完全删除,并使用更新的解决方案替换。

相关问题