- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 StimulusJS 的新手,我只想在用户添加新帖子时显示附加在其他帖子后面的帖子内容。一切似乎都正常,但帖子被附加了两次,因此看起来表单已提交了两次。
<div data-controller="posts">
<div data-target="posts.add">
</div>
<!-- this is from a rails partial but it's all inside the data-controller -->
<%= form_with scope: :post, url: posts_path, method: 'post', data: { action: "post#addBody" } do |form| %>
<%= form.text_field :content, class: "form-control", data: { target: "posts.body"} %>
<%= form.submit class: "btn btn-primary" %>
</div>
实际控制人:
import { Controller } from "stimulus"
export default class extends Controller {
static targets = ["body", "add"]
addBody() {
let content = this.bodyTarget.value;
this.addTarget.insertAdjacentHTML('beforebegin', `<div>${content}</div>`);
}
}
我知道这是有效的,因为它会在表单提交时在页面上显示帖子,但是再次调用该函数并且帖子会出现两次。我已经用 debugger
尝试过,似乎 Stimulus 内部的某些东西正在第二次调用 addBody()
?
作为上下文,这就是 posts_controller 正在做的事情:
def create
@post = current_user.post.build(post_params)
respond_to do |format|
if @post.save
format.json {head :ok}
else
raise ActiveRecord::Rollback
end
end
end
最佳答案
事实证明问题出在我的 application.js
文件中。我有:
const application = Application.start()
const context = require.context("../controllers", true, /\.js$/)
application.load(definitionsFromContext(context))
import "controllers"
我不知道这一行:import "controllers"
是如何到达那里的,也不知道我认为它做了什么,但删除它后,事情只触发一次。
关于ruby-on-rails - 刺激 Controller Action 发射两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64617503/
你好呀,我是歪歪。 给大家分享一个关于 ScheduledExecutorService 线程池的 BUG 啊,这个 BUG 能直接把 CPU 给飚到 100%,希望大家永远踩不到。
我在 python 2.7 中使用 spur,通过 ssh 连接到 linux box,但由于某种原因,它弄乱了我的文件路径。这是命令: import spur outFile = "'%s'" %
我是 StimulusJS 的新手,我只想在用户添加新帖子时显示附加在其他帖子后面的帖子内容。一切似乎都正常,但帖子被附加了两次,因此看起来表单已提交了两次。
我是 StimulusJS 的新手,我只想在用户添加新帖子时显示附加在其他帖子后面的帖子内容。一切似乎都正常,但帖子被附加了两次,因此看起来表单已提交了两次。
我有一个项目列表,每个项目都有一个链接可以单击以对其进行编辑。当他们单击该编辑链接时,我正在使用刺激使编辑“模态”表单可见。将要编辑的内容的 id 以 id= 的形式出现在列表的相应链接标签上 因此,
我的 HTML 页面上有以下 Controller : ... ... 此子 Controller 映射到以下 c
我的 HTML 页面上有以下 Controller : ... ... 此子 Controller 映射到以下 c
我是一名优秀的程序员,十分优秀!