问题标签 [stimulusjs]
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.
ruby-on-rails - 刺激反射回调在生产中停止工作
由于我在生产服务器上进行了一些更新并重新部署了应用程序,Stimulus Reflex 和 StimulusJS 控制器之间的一些客户端回调和承诺突然停止工作。在开发中,一切正常,在生产中,只有before
回调在工作。
因此,例如,这是有效的:
虽然这个(和其他)不是:
反射本身正在开发和生产中工作,只是回调不在生产中。日志文件中没有错误,控制台中没有 JS 错误,Redis 正在运行,其他一切似乎都在工作。
反射 ( ) 内的服务器端回调after_reflex :show_success, only: [:update]
也可以正常工作。
我可以确认它与浏览器无关(在 Chrome、Firefox 和 Edge 上测试过)。
它是防火墙后面的公司服务器可能是一个问题吗?但是其他的东西也不应该工作。
有谁知道这可能突然来自哪里?
我不知道在哪里搜索了。
ruby-on-rails - 如何在刺激反射中访问 current_user
在这个反射中,我想将 lastupdateby 字段设置为 current_user。我无法让它工作。我需要做些什么来获得反射的价值吗?关于我做错了什么有什么想法吗?如果我硬编码该值而不是 current_user 它可以工作。我一定只是引用错了。
ruby-on-rails - 在 RoR 中提交之前,如何获取模型方法中的属性值?
假设我有一个属性:year_of_birth 例如和另一个字段:age(只读),我填写 year_of_birth。我在模型中创建了一个方法来计算年龄,年龄如何在视图中填充?
ruby-on-rails - 为什么我的 Mapbox GL JS 地图在通过 Turbolinks 首次访问时无法正确显示?
我正在尝试将 Turbolinks 添加到我的 Rails 6 应用程序中(我参加聚会迟到了)并且我遇到了 TailwindCSS 和 Mapbox GL JS 的显示问题。
如果我在带有地图的页面上开始我的旅程(新标签或刷新页面),那么在我访问期间一切都会按预期进行(我可以反复离开并返回带有地图的页面,并且每次一切正常预期的)。我什至可以访问带有其他Mapbox 实例的页面并且这些实例正确显示(我正在慢慢地从script
每个页面上的孤立标签转换到 StimulusJS,这让我有几个提供 Mapbox 的控制器,例如 mapcity_controller 和 mapstreet_controller - 我没有不认为这是问题的一部分,但我不想留下任何机会)。
但是,如果我在没有地图的其他页面(新选项卡或刷新页面)上开始我的旅程,然后导航到带有 Mapbox 的页面,则fixed
andw-*
样式不起作用。如果我滚动页面,地图会随着内容向上流动,并且地图不会填满w-2/3
它应该填满的整个空间。
我认为它可能是父md:w-1/2 lg:w-2/3
容器 div,但删除它根本不会改变行为:
如果我从等式中删除 Mapbox,则在任一访问场景中一切都会按预期工作(无论该页面是否是我第一次访问,我总是有一个全宽、非滚动的右窗格):
我猜我的 StimulusJS 控制器的某些东西不能与 Turbolinks 一起正常工作。我已经删除了所有额外的代码(设置缩放级别、添加源和图层等),但问题仍然存在。我试过使用connect
as well as initialize
,结果相同。
以防万一,这是我的index.js
文件:
这是我的packs/application.js
文件:
该application.scss
文件包含:
没有任何自定义样式custom.scss
适用于地图或其容器 div。
ruby-on-rails - 刺激控制器动作触发两次
我是 StimulusJS 的新手,我只想在用户添加新帖子时显示附加在其他帖子之后的帖子内容。一切似乎都正常,但帖子被附加了两次,所以看起来表单被提交了两次。
实际控制人:
我知道这是可行的,因为它在表单提交时在页面上显示帖子,但是再次调用该函数并且帖子出现了两次。我已经尝试过了debugger
,似乎 Stimulus 内部的某些东西正在addBody()
第二次调用?
作为上下文,这就是 posts_controller 正在做的事情:
ruby-on-rails - How can I use a Custom Channel of Action Cable with Stimulus Reflex and View Component?
So, I'm working on a project that should have a chat component same as the linkedin chat, where the user will have all their contacts and messages.
But, I've tried of all ways to work with stimulus_reflex
and view_component
to create this chat_box
, but until now I had none progress.
So right now I'm trying to create a chat with pure action_cable, but my doubt is: Can I use this action_cable channel ('ChatRoom')
with Stimulus Reflex
? Because when we see the rails console shows something like this: Broadcasting to StimulusReflex::Channel:1
, and I want to Broadcast to the ChatRoom Channel
.
Someone was tried the same?
ruby-on-rails - 使用 fields_for 的嵌套表单字段给出错误“哈希由 Active Record 定义......同名”
我对rails很陌生,所以请原谅我的无知。但我目前有一个控制器,它为理论上的病毒扫描程序存储“扫描结果”。
扫描模型,has_many Detections,它是一个包含 Sha256 哈希和类型的记录。
代码如下
当我尝试创建用于向数据库添加新扫描的模板时,出现此错误 hash is defined by Active Record. Check to make sure that you don't have an attribute or method with the same name
。
我正在使用以下模板来尝试渲染它。
谁能帮我弄清楚我做错了什么。
javascript - Stimulus.js 加载部分的方式?
我们正在研究将 Stimulus.js 与我们的 Rails6 应用程序一起使用,并在将我们的思维从 jQuery 转移到 Stimulus 时不断遇到概念障碍。
例如:
在页面的某一部分我们有一个按钮,当单击该按钮时,我们希望将内容加载到页面另一部分的 div 中。在 jQuery 中,这很简单 - 响应click
事件,将 rails 后端的部分加载到该 div 中。
在刺激,如何做到这一点?看起来一切都需要在一个大控制器中,以便按钮可以看到“目标 div”。所以本质上我们正在编写“页面”控制器,这似乎有很多开销。此外,它搞乱了我们将页面分解为部分的方式,因为现在这些部分需要共享一个 Stimulus 控制器。
ruby-on-rails - 刺激反射访问应用程序控制器变量
我使用在应用程序控制器中声明的这个实例变量(@profile)来检查当前用户是否有权访问 params[:profile_id]
如何在 Reflex 操作中访问相同的 @profile 变量?否则,任何用户都可以更改 DOM 并编辑 Id 字段。
html - Stimulus JS 脚本计算总数
因此,在黑色方块中,我得到“Precio”(价格)*“Orden”(数量)的总和,然后我想得到红色方块所在的黑色方块中所有内容的总和,即“Total” '
这是我当前的脚本:
(() => { 常量应用程序 = Stimulus.Application.start()这就是我的 _form.html.erb 中的内容,只是我使用任何 Stimulus 明智的部分
关于如何成功地从 3 个元素中获得总和的任何建议?