3

Rails 7 をいじったり、マップをインポートしたりしています。カスタム JS を含むフォルダーをインポートしようとしています。

# config/importmap.rb
pin_all_from "app/javascript/custom", under: "custom"

# app/javascript/application.js
import "custom"

ChromeUncaught TypeError: Failed to resolve module specifier "custom"Uncaught Error: Unable to resolve specifier 'custom' from [shim]Firefox でのギブ

興味深いことにimport "custom/script"うまく動作します。

私は何を間違っていますか?

4

1 に答える 1

-1

これはいくつかのユースケースではまだ有効かもしれませんが、私がやろうとしていたことは、Rails 7 のアンチパターンのようなものだったと思います。

代わりにスティミュラス コントローラを使用するのは非常に簡単です。

参考のための刺激ハンドブック

たとえば、ユーザーが「x」をクリックしたときにアラートを閉じるには

// app/javascript/alerts_controller.js
import { Controller } from "@hotwired/stimulus"

export default class extends Controller {
    dismiss () {
        this.element.style.display = 'none';
    }
}
<div data-controller="alerts">
    <h2> Alert! </h2>
    <span data-action="click->alerts#dismiss"><i class="fas fa-times"></i></span>
</div>
于 2022-02-03T13:53:50.693 に答える