【发布时间】:2022-01-22 00:35:37
【问题描述】:
例如,我有一张图片位于此处:
app/assets/images/tokens/zombies/Shambler.png
当我在 rails 控制台输入命令时:
helper.asset_path("tokens/zombies/Shambler.png")
返回:
/assets/tokens/zombies/Shambler-(Fingerprint).png
但是,当我在代码中使用这一行时:
token.src = '<%= asset_path("tokens/zombies/Shambler.png") %>';
返回:
bootstrap:83 Uncaught Error: Module build failed (from ./node_modules/rails-erb-loader/index.js):
Error: rails-erb-loader failed with code: 1
at ChildProcess.<anonymous> (neptune07289825/Projects/NarrativeDice/node_modules/rails-erb-loader/index.js:128)
at ChildProcess.emit (events.js:198)
at maybeClose (internal/child_process.js:982)
at Process.ChildProcess._handle.onexit (internal/child_process.js:259)
at Object../app/javascript/packs/map.js.erb (bootstrap:83)
at __webpack_require__ (bootstrap:19)
at bootstrap:83
at bootstrap:83
根据我的研究,我理解这意味着 erb-loader 已检查并在指定的资产路径中找不到资产。我只是不明白为什么,因为我能够在控制台中找到它,它显然在默认管道中,我没有更改清单。
谁能告诉我如何使用 js.erb 文件来做到这一点?
【问题讨论】:
标签: ruby-on-rails