新 Rails 7 Turbo 应用程序不显示数据-turbo-确认警报消息不会触发(turbo-rails 7.1.0 和 7.1.1)
New Rails 7 Turbo app doesn't show the data-turbo-confirm alert messages don't fire (turbo-rails 7.1.0 and 7.1.1)
2021 年或 2022 年创建的新 Rails 7 个应用程序,当我单击带有 data-turbo-confirm
的表单时,未显示警告消息。
<%= form_with url: root_path(), data: {'turbo-confirm': "Are you sure you want to submit this form?"},
method: :delete do |f| %>
<%= f.submit "Delete".html_safe, class: "delete-apple-button btn btn-primary btn-sm" %>
<% end %>
<br />
<%= turbo_frame_tag "apples-list" do %>
nothing has happened yet
<% end %>
产生的HTML是
页面加载到:
当您点击删除时,没有显示警告:
预期结果:
• 确认按钮操作的提醒消息
实际结果:
• 未显示警报
如果您在本地为 turbo-rails
安装了 gem 版本 7.1.0 或 7.1.1,就会发生这种情况
这些 gem 号码在 10 月份被意外推送到 Rubygem,然后被猛拉。但是,由于捆绑器在设置新的 rails 应用程序时将默认使用 Rails gem 的 最高编号 ,因此它将选择 turbo-rails version 7.1.0 or 7.1.1 , 会显示这个缺陷
gem 已被抽出,因此这只会影响您在 2021 年 10 月和抽出日期之间开发 rails 应用程序。
修复您的计算机:
gem uninstall turbo-rails
Bundler 将提示您卸载哪个版本:
如果您安装了两个 gem 版本,则需要重复此步骤。
然后,bundler 将不会使用该版本制作新应用。
但是,如果您已经生成了一个应用程序,它将被锁定到错误的版本。要修复,请在 Gemfile
中明确指定版本
gem "turbo-rails", "~> 1.0"
你可以用js来做。
代码适合我。
function confirmDestroy(message) {
if (!confirm(message)) {
return false;
}
}
<div>
<%= link_to "Edit this post", edit_post_path(@post) %> |
<%= link_to "Back to posts", posts_path %>
<%= button_to "Destroy this post", @post, method: :delete, onclick: "return confirmDestroy('Are you sure want destroy this post?')" %>
</div>
2021 年或 2022 年创建的新 Rails 7 个应用程序,当我单击带有 data-turbo-confirm
的表单时,未显示警告消息。
<%= form_with url: root_path(), data: {'turbo-confirm': "Are you sure you want to submit this form?"},
method: :delete do |f| %>
<%= f.submit "Delete".html_safe, class: "delete-apple-button btn btn-primary btn-sm" %>
<% end %>
<br />
<%= turbo_frame_tag "apples-list" do %>
nothing has happened yet
<% end %>
产生的HTML是
页面加载到:
当您点击删除时,没有显示警告:
预期结果: • 确认按钮操作的提醒消息
实际结果: • 未显示警报
如果您在本地为 turbo-rails
安装了 gem 版本 7.1.0 或 7.1.1,就会发生这种情况这些 gem 号码在 10 月份被意外推送到 Rubygem,然后被猛拉。但是,由于捆绑器在设置新的 rails 应用程序时将默认使用 Rails gem 的 最高编号 ,因此它将选择 turbo-rails version 7.1.0 or 7.1.1 , 会显示这个缺陷
gem 已被抽出,因此这只会影响您在 2021 年 10 月和抽出日期之间开发 rails 应用程序。
修复您的计算机:
gem uninstall turbo-rails
Bundler 将提示您卸载哪个版本:
如果您安装了两个 gem 版本,则需要重复此步骤。
然后,bundler 将不会使用该版本制作新应用。
但是,如果您已经生成了一个应用程序,它将被锁定到错误的版本。要修复,请在 Gemfile
中明确指定版本gem "turbo-rails", "~> 1.0"
你可以用js来做。
代码适合我。
function confirmDestroy(message) {
if (!confirm(message)) {
return false;
}
}
<div>
<%= link_to "Edit this post", edit_post_path(@post) %> |
<%= link_to "Back to posts", posts_path %>
<%= button_to "Destroy this post", @post, method: :delete, onclick: "return confirmDestroy('Are you sure want destroy this post?')" %>
</div>