0

我正在连接一个松弛的克隆(html/css)并拥有它,以便在我单击 x 时打开/关闭参考抽屉。我还想从导航区域打开/关闭它,并认为我可以采用相同的 link_to 并从页面的不同部分调用它。

但是当我这样做时,如果我从不同的目标中调用它,我会收到一个错误

Error invoking action "click->navigation#toggle_reference_drawer"
Error: Missing target element "navigation.referenceDrawer"

如何使用数据目标中的代码来触发不同的数据目标?

即我想要工作的是

--navigation partial (link_to 不工作) --

<div data-navigation-target="storyNavLinks">
   <div class ="story">
     <%= link_to "[x]", "#", data: { action: "click->navigation#hide_reference_drawer" } %>
   </div>
</div>

-- 应用程序部分(link_to 有效) --

  <div data-navigation-target="referenceDrawer">
     <div class='reference box'>
        <%= link_to "[x]", "#", data: { action: "click->navigation#hide_reference_drawer" } %>
     </div>
  </div>
 

不知道我哪里出错了。我想只要被引用的目标是唯一的并且在页面上它应该从哪里调用它并不重要?

4

1 回答 1

1

您必须确保您的data-controller属性位于包含两个目标的元素上。如果这是不可能的,您可以始终包含控制器两次,但目标将仅适用于每个实例,因此您还需要将它们添加两次。

于 2021-03-16T23:54:59.920 回答