问题标签 [turbo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Ruby On Rails - CRUD - 销毁/删除不起作用?
我已经阅读了本教程的大部分内容,并且已经了解了添加删除文章功能的部分:
https://guides.rubyonrails.org/getting_started.html
...但只要点击“删除”链接,文章就不会被删除。没有任何反应,发送的是 GET 请求而不是 DELETE。
从 erb 文件:
从控制器:
在尝试了 SO 和各种网页中提到的解决方案之后(将以下内容添加到我的“application.html.erb”文件中:
...我收到此错误:
ActionView::Template::Error (The asset "application.js" is not present in the asset pipeline.
我做了一些挖掘并意识到应用程序脚手架(rails new blog
在这种情况下)没有创建任何 Javascript 目录,更不用说向它们添加任何 JS 文件了。我可以自己添加它们,但我什至不知道 Rails 和/或 Turbo 正在寻找什么 JS 文件。查询?其他图书馆?
但是,理想情况下,我想知道如何正确构建应用程序,以便包含任何必要的 Javascript。
谢谢,布莱恩
编辑 我能够通过使用“非涡轮”删除项目的方法和使用“button_to”而不是“link_to”作为“删除”链接来获得删除功能。但是——我仍然想知道为什么教程中显示的应用程序不能按预期工作,以及如何使用链接而不是按钮来触发项目删除(更不用说为什么使用 turbo 不起作用)。
ruby-on-rails - 使用 Turbo Frames 在 Rails 中处理 HTTP 404 响应的最佳实践?
我正在思考 Turbo Streams 的工作原理,主要是作为一个思想实验。在构建一个简单的玩具应用程序后,我了解了基础知识。使用少量 Turbo Frames 可以完成很多事情,这非常强大。
能够用 Turbo Frame 响应并在 DOM 中替换正确的内容是很有趣的。但是,我注意到如果 Turbo Frame 中的链接响应 HTTP 404,它只会显示在错误控制台中。(可见页面上没有任何变化。)处理此类错误的最佳实践是什么?向用户提示链接断开的简单选项是什么?
ruby-on-rails - Capybara 功能规格因 Turbo Drive 而失败
我正在尝试在我的 Rails 6.1 应用程序的几个页面上引入 Turbo Drive。
Ḯ 在将一些遗留的 JQuery 插件初始化从$(document).ready()
调用移动到document.addEventListener('turbo:load', ..)
调用之后,它已经按预期得到了。
但是,当我运行 Capybara 功能规范时,我可以从失败规范的屏幕截图中看到,比如 JQuery 插件没有像应有的那样初始化。测试失败的一个典型示例:
谁能帮我理解为什么这在功能规范中不起作用?在我看来,turbo:load
事件根本没有被触发。
我试过的
检查浏览器日志
我启用登录驱动程序:
Selenium::WebDriver::Remote::Capabilities.chrome( "goog:loggingPrefs": { browser: 'ALL' } ).
.. 但是page.driver.browser.manage.logs.get(:browser)
在失败的调用之前expect
调用只会返回一个空数组。
也许我做错了?
确保 Capybara 在页面完成加载之前不会超时
Capybara.default_max_wait_time = 10
ruby-on-rails - Rails 7 和 Turbo
鉴于上面的代码,我想创建一个实时视图,以便在索引控件中来自@rides 的任何时间发生变化,视图也会发生变化。
控制器和视图中必要的修改是“链接”的
从概念上讲,我无法理解 turbstreams 如何与逻辑、视图和部分结合在一起
javascript - 如何在涡轮框架中渲染 Mermaidjs 图?
我有主页,我想在单独的框架中显示美人鱼图:
我有一个带有图表代码的框架(我简化了它):
但是图表没有渲染,我只在页面上看到了美人鱼代码。
ruby-on-rails - 您如何使用涡轮框架将对象创建表单替换为对象显示部分?
我有一个带有相应视图的模型和subscription_tier
动作。我已经用涡轮框架包裹了每一个show
edit
<%= turbo_frame_tag subscription_tier do %>
当我编辑现有订阅层并保存它时,turbo 框架会刷新并显示我保存的层,但我无法复制它来创建新层。
我的新层级框架:
并且在new.html.erb
单击“添加层”按钮成功呈现表单,我可以保存对象,但在保存时涡轮框架被破坏并出现错误Response has no matching <turbo-frame id="new_tier"> element
我知道这是因为我的show
部分是用 包裹的<%= turbo_frame_tag subscription_tier do %>
,但我不知道如何协调这一点。