BEE*_*EEK 7 ruby-on-rails outlet turbo hotwire
在 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>
Run Code Online (Sandbox Code Playgroud)
控制器:
\\ 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)
...
}
}
Run Code Online (Sandbox Code Playgroud)
\\ togglee_controller.js
import { Controller } from "@hotwired/stimulus"
export default class extends Controller {
connect() {
console.log("Togglee controller connected")
}
}
Run Code Online (Sandbox Code Playgroud)
控制台输出显示控制器已连接并对单击做出反应:
Toggler controller connected
Togglee controller connected
toggler controller: handleClick
outlet controllers: undefined
Run Code Online (Sandbox Code Playgroud)
...但是与插座相关的属性(例如 this.toggleeOutlets)未定义。
怎么了?
(顺便说一句 - 我确认选择器字符串 #filter-form 正确标识了 div 元素)
版本:
轨道 (7.0.1)
刺激轨道 (1.2.1)
涡轮轨道 (1.3.2)
| 归档时间: |
|
| 查看次数: |
817 次 |
| 最近记录: |