问题标签 [stimulus-reflex]

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.

0 投票
1 回答
1265 浏览

ruby-on-rails - 为什么 Rails 6 Stimulus Reflex 会重新渲染具有重复内容的页面?

我一直致力于在现有的 Rails 6 应用程序中启动和运行 Stimulus Reflex。成功!我有几个反应在行动,ActionCable 正在做它的工作......一切都很好。但是,在反射成功并且 Stimulus 通过 ActionCable 进行通信后,页面在我眼前更新,内容重复。

下面的表单只是简单地点击了保存表单对象的反射。如您所见,在 Stimulus 和/或 Turbolinks 重新呈现表单后页面不正确。在这种情况下,它会双重呈现表单提交按钮。

我不知道为什么会发生这种情况,希望这里有人看到这个双重渲染问题。

在此处输入图像描述

在此处输入图像描述

HTML

反射

0 投票
1 回答
149 浏览

ruby-on-rails - 刺激反射生命周期事件

这个要点是一个使用刺激反射的应用程序。这是关于分页反射的,我需要隐藏的afterReflex()是执行回调时的微调器,但有时它不起作用。

https://gist.github.com/matedemorphy/94c6ad13b6aebd89862b5b14120c98df

我在 config/initializers/session_store.rb 中有这一行

Rails.application.config.session_store :cookie_store, key: _my_app, domain: lvh.me, 但随后在 development.rb

config.session_store :cache_store config.cache_store = :file_store, Rails.root.join(tmp, cache).to_s, { size: 320.megabytes }

那里可能有些冲突?

0 投票
1 回答
803 浏览

ruby-on-rails-6 - “ActionCable 连接未打开!在调用 `this.stimulate()` 之前,`this.isActionCableConnectionOpen()` 必须返回 true”

使用 rails 6 访问刺激反射时出现上述错误。

0 投票
2 回答
273 浏览

ruby-on-rails - 在 Heroku 问题上具有刺激反射部署的 Rails 6 应用程序

我在 Heroku 上部署了我的 Rails 6 应用程序(带有刺激反射)。一切都可以找到,包括我的 jQuery 和 JS,但任何与刺激-relfex 相关的东西都不起作用?在我的本地开发机器上一切正常。有任何想法吗?

0 投票
2 回答
173 浏览

ruby-on-rails - CableReady 频道的 insert_adjacent_html 的反面?

问题已得到解答 - 请参阅下面的帖子

我有一个 CableReady 频道“当前”,它动态显示“帖子”的提要。我可以让帖子单独出现就好了,但我不知道如何单独从频道中删除它们。

这个 Posts 到通道的输入是在 PostsController.rb 中控制的,如下所示:

我尝试了一种remove方法,例如cable_ready["current"].remove(... ,但这只会一次性删除频道中的所有帖子

我计划在我的 PostsController.rb 中使用另一种方法来执行删除:

我不想完全从 DOM 中删除帖子,因为提要是动态的,我希望它们能够在某个时候再次显示在提要中。

编辑:对通缉行为的进一步解释

想象提要像 twitter,新帖子出现在顶部。但是这些帖子只会出现一定的秒数。您还可以将提要倒回到某个点。因此,如果您倒带时间,从提要中删除的帖子可能会再次出现在顶部。

感谢您对其他策略的任何想法或建议,谢谢

0 投票
1 回答
414 浏览

ruby-on-rails - 自定义刺激反射类

我正在 Rails 6 中进行一个实验项目。这个项目的目的对我来说是学习新的方法和使用新的(“ish”)技术。

简而言之,我正在使用Trailblazer基础设施、stimulus_reflexview_component以及view_component_reflex

据我所知,StimulusReflex&ViewComponentReflex期望反射类驻留在reflexes文件夹/命名空间中。

我想要达到的目标:

ViewComponentReflex将我的组件嵌套在Trailblazer概念文件夹(命名空间)中。

我试过的:

创建了以下文件夹结构:

  • concepts/post/component/counter.rb
  • concepts/post/component/counter/counter.html.erb

预期结果:

我希望 Rails 允许命名空间等。设置上述内容并运行示例应用程序时,出现错误:uninitialized constant Component::CounterReflex. 这个类的依赖是内置在其中一个宝石中的,但我不知道在哪里可以找到它。我尝试过覆盖一些方法ViewComponentReflex无济于事。

当我将我Component::Counter的移动到components文件夹(如本例中所示)时,代码有效。

有没有办法使用这个堆栈重新定义/配置反射类的路由(模块)?

更新:

我的应用程序的 GitHub 存储库可以在这里找到

我在点击计数器按钮时看到的确切错误消息是:

0 投票
0 回答
197 浏览

ruby-on-rails - 刺激反射回调在生产中停止工作

由于我在生产服务器上进行了一些更新并重新部署了应用程序,Stimulus Reflex 和 StimulusJS 控制器之间的一些客户端回调和承诺突然停止工作。在开发中,一切正常,在生产中,只有before回调在工作。

因此,例如,这是有效的:

虽然这个(和其他)不是:

反射本身正在开发和生产中工作,只是回调不在生产中。日志文件中没有错误,控制台中没有 JS 错误,Redis 正在运行,其他一切似乎都在工作。

反射 ( ) 内的服务器端回调after_reflex :show_success, only: [:update]也可以正常工作。

我可以确认它与浏览器无关(在 Chrome、Firefox 和 Edge 上测试过)。

它是防火墙后面的公司服务器可能是一个问题吗?但是其他的东西也不应该工作。

有谁知道这可能突然来自哪里?

我不知道在哪里搜索了。

0 投票
1 回答
220 浏览

ruby-on-rails - 如何在刺激反射中访问 c​​urrent_user

在这个反射中,我想将 lastupdateby 字段设置为 current_user。我无法让它工作。我需要做些什么来获得反射的价值吗?关于我做错了什么有什么想法吗?如果我硬编码该值而不是 current_user 它可以工作。我一定只是引用错了。

0 投票
2 回答
225 浏览

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?

0 投票
1 回答
349 浏览

ruby-on-rails - 刺激反射访问应用程序控制器变量

我使用在应用程序控制器中声明的这个实例变量(@profile)来检查当前用户是否有权访问 params[:profile_id]

如何在 Reflex 操作中访问相同的 @profile 变量?否则,任何用户都可以更改 DOM 并编辑 Id 字段。