问题标签 [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.

0 投票
1 回答
325 浏览

ruby-on-rails - 如何将 StimulusJS 安装到 Ruby on Rails 应用程序?

如何将 StimulusJS 安装到 Ruby on Rails 应用程序?

文档提到webpackand npm,但没有提到 Rails 或 Yarn(在撰写本文时)。

(有点奇怪,因为 Stimulus 来自 Basecamp,他确实创造了 RoR……)

0 投票
0 回答
436 浏览

ruby - 如何修复使用 Stimulus 和 HAML 调用两次的事件控制器

我遇到了一个问题。我在 HAML 中使用Stimulus并使用该操作调用控制器keydown。事件侦听器被调用两次。

这是我的 HAML 代码和控制器代码:

控制器.js:

0 投票
1 回答
419 浏览

javascript - 如何使用 Stimulus 修复“未定义 Cookie”

我有一个使用 Ruby 2.5.3 和 Stimulus 1.1.1 框架的 Rails v5.2.4 应用程序。我在我的 Rails 控制器中设置了一些 cookie,并从 Stimulus 控制器访问它们,但是当我第一次加载页面时,我得到:

但是当我重新加载同一页面时,我得到了 cookie 值并且一切正常。我没有使用任何 gem 来处理 cookie。

我的stimulusjs方法与相应的行号是:

在第一次加载时,当我在浏览器上使用实时表达式时,Cookies.get('tech_and_monitor');我得到了 cookie 值。

我不明白为什么我在第一次加载时没有得到对 Cookies 的引用而在第二次加载时没有得到它的引用?

0 投票
1 回答
542 浏览

javascript - Uncaught (in promise) TypeError: o(...) is not a function when using ImageToZPL from zpl-image package

我正在尝试将画布从 HRML2Canvas 转换为 PNG 图像,然后将其转换为 ZPL 图像以将 ZPL 命令发送到 Zebra 打印机,但我已经尝试过这个解决方案

但我不断收到此错误: Uncaught (in promise) TypeError: o(...) is not a function

请问有谁知道如何解决这个问题?

这是我的 JS 代码:

0 投票
0 回答
192 浏览

ruby-on-rails - 与 rails 引擎共享 Stimulusjs 控制器

我正在为 Rails6 开发一个 Rails 引擎。我想在那个 Rails 引擎中包含 Stimulus 控制器。主应用程序使用 Webpacker。并希望将 grid_controller.js 移动到我的 rails 引擎中,因为它会自动包含在主应用程序中。

应用程序/javascript/packs/application.js 应用程序/javascript/controllers/grid_controller.js

}
}

我的引擎中的结构

0 投票
3 回答
3490 浏览

javascript - 如何在stimulus.js中获取元素的类

我想切换元素,我需要一个类名。如何在stimulus.js 中获取嵌套元素的类名并进行更改?FI,我需要切换最初隐藏的“ul”元素。

在刺激控制器中,我有:

我试图调用一个 js 函数className,但似乎 js 函数不像以前那样工作。我只是不知道如何得到它。

0 投票
1 回答
1746 浏览

ruby-on-rails - 从 Rails 助手或控制器调用刺激控制器中的函数?

我正在开发一个 Rails 应用程序,我想在其中使用 Javascript 的导航 API 来获取用户的地理位置。我在“app/javascript/location_controller”下的控制器中有代码,它可以工作。

我将如何从 Rails Helper 调用“getUserLocation”?

0 投票
1 回答
410 浏览

ruby-on-rails - 从 rails RJS 访问 Stimulus JS

有没有办法从 Rails RJS 视图访问 Stimulus JS 控制器操作?

例如:

我可以

对于那些不知道 RJS 是什么的人:Ruby on Rails 中的“ruby-to-js”模板系统

0 投票
0 回答
119 浏览

ruby-on-rails - 如何保存在 Rails 中动态创建的对象的顺序

我正在使用 Rails 和 Stimulus JS 来允许用户为他们的孩子添加多个监护人到数据库中。一个孩子有很多监护人。Guardian 有一个 name 属性。一个用户最多可以为一个孩子添加 3 个监护人,也可以删除监护人,因此页面上的监护人数量不是静态的。守护者的顺序很重要,因为页面上的第一个守护者是“主要”守护者,接下来的两个是“备用”守护者。

在每个 Guardian 对象的“guardian_position”属性中,将元素顺序保存到数据库的最佳方法是什么?例如,屏幕上的第一个监护人需要有一个“1”的监护人位置,第二个应该有一个“2”的监护人位置等等。我知道我可以使用隐藏字段并根据位置动态设置值屏幕上的元素,但这似乎有点骇人听闻,用户可以根据需要对其进行操作。

还有其他想法吗?

0 投票
1 回答
112 浏览

javascript - 如何将当前的 JavaScript 事件重新附加到不同的元素?

我正在尝试拦截 JavaScript 事件,并preventDefault显示警告模式。如果用户选择接受警告,那么他们点击“继续”并继续做他们正在做的事情。不过,这可能会发生多种可能的事件,因此我认为处理它的最佳方法是将当前事件附加到“继续”按钮。

这是我到目前为止的代码:

对于上下文,我警告用户在导航或分页之前页面上有选中的复选框。

分页也由 Stimulus 处理。

这是 HTML 的示例:

那么如何将我运行的事件附加preventDefault到“继续”按钮,以便事件继续进行,就好像什么都没发生一样?