首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hotwire破坏link_to rails

Hotwire破坏link_to rails
EN

Stack Overflow用户
提问于 2021-05-01 02:19:01
回答 4查看 687关注 0票数 1

我最近在我的rails应用程序中添加了Hotwire来更新模态,但这破坏了我将用户重定向到stripe的link_to。我在网上寻找解决它的方法,但由于Hotwire相对较新,我找不到它。有没有人对让link_to与turbo stream协同工作有什么建议?

EN

回答 4

Stack Overflow用户

发布于 2021-08-05 18:40:11

有三种方法(至少)可以恢复默认(非Turbo)链路行为。

1:将data-turbo属性设置为false。

代码语言:javascript
复制
<%= link_to "Click Here", path_helper_method, data: { turbo: false } %>
(or in plain html)
<a href="" data-turbo="false">

2:设置目标属性。

代码语言:javascript
复制
<%= link_to "Click Here", path_helper_method, target: "_top" %>
(or in plain html)
<a href="" target="_top">

3:将链接移出任何Turbo帧。没有上述属性的Turbo帧内的任何链接,默认情况下都将由Turbo处理(通常会产生意外的结果)。

票数 3
EN

Stack Overflow用户

发布于 2021-05-19 06:29:14

将link_to转换为远程调用的帮助器目前不能与Turbo一起使用。远程链接将不会停留在帧内,也不会允许您使用turbo流操作进行响应。建议将这些链接替换为带样式的button_to,这样您就可以流畅地使用常规表单,并且可以更好地遵循a11y。

@edit在turbo_frame_tag上使用target:"_top“来启用其中的链接

票数 0
EN

Stack Overflow用户

发布于 2021-06-28 17:14:17

如果链接位于带有turbo: trueturbo_frame_tag内,或者在任何父元素上全局设置了turbo: true,则该链接将充当turbo: true,这意味着它不会重定向您,因为它将尝试执行ajax请求。试着做<%= link_to 'Woodoo', root_path, data: { turbo: false } %>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67338709

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档