Stimulus не идентифицирует выходы в приложении Rails 7
В приложении Rails 7 щелчок по значку переключает свойство отображения формы. Оба HTML-элемента должным образом подключаются к соответствующим контроллерам (переключателю и переключателю). Форма (togglee) является выходом иконки (toggler). Проблема: контроллер переключателя не распознает выход переключателя. Пять свойств выхода (например, this.toggleeOutlets) остаются неопределенными.
HTML:
<i class="toggle-display fa fa-chevron-down" data-controller="toggler" data-toggler-togglee-outlet="#filter-form" data-action="click->toggler#handleClick" title="Asset Filter"></i>
и ниже
<div id="filter-form" style="display:none" data-controller="togglee">
...
/div>
Контроллеры:
\\ toggler_controller.js
import { Controller } from "@hotwired/stimulus"
export default class extends Controller {
static outlets = [ "togglee" ]
connect() {
console.log("Toggler controller connected")
}
handleClick(event) {
console.log("toggler controller: handleClick")
event.preventDefault();
console.log("outlet controllers:", this.toggleeOutlets)
...
}
}
\\ togglee_controller.js
import { Controller } from "@hotwired/stimulus"
export default class extends Controller {
connect() {
console.log("Togglee controller connected")
}
}
Вывод консоли показывает, что контроллеры подключаются и реагируют на щелчок:
Toggler controller connected
Togglee controller connected
toggler controller: handleClick
outlet controllers: undefined
... но свойства, связанные с розеткой (например, this.toggleeOutlets), не определены.
В чем дело?
(Кстати, я подтвердил, что строка селектора #filter-form правильно идентифицирует элемент div)
Версии:
рельсы (7.0.1)
стимулирующие рельсы (1.2.1)
турборельсы (1.3.2)