问题标签 [hyperstack]

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 回答
81 浏览

ruby-on-rails - 模型未保存时在客户端获取错误文本

我正在使用 Hyperstack.org 框架,因此使用 Opal 编译的 Ruby 代码。Hyperstack 与 Rails 的集成在客户端创建了一些模型的表示,我对响应中的错误验证有疑问。

使用验证器保存模型时,当触发其中一个验证器时,我无法在承诺响应中获得完整的错误消息。

在这段代码中:

第一个 puts 返回#ActiveModel::Errors,但我似乎无法使用该模型的方法。

我可以看到这个测试:https://github.com/hyperstack-org/hyperstack/blob/a09bc601b3ad289c9f75156416ed39dff88059c9/ruby/hyper-model/spec/batch1/misc/errors_spec.rb#L340所以我希望这是工作,一定是我!

另外,我注意到对 promise 的 JSON 响应实际上包含错误消息:

任何帮助表示赞赏!

0 投票
1 回答
69 浏览

ruby-on-rails - 当使用带有 Hyperloop 的设计时,可以从 Rails 控制台访问 Hyperloop::Application.acting_user_id 吗?

当您从 Rails 控制台调用 Hyperloop::Application.acting_user_id 时,按照https://github.com/barriehadfield/hyperloop_devise_tutorial获得:

NoMethodError:Hyperloop::ClientDrivers:Class 的未定义方法“client_drivers_get_acting_user_id”

这是预期的行为还是应该定义一些额外的辅助方法?

0 投票
2 回答
82 浏览

ruby-on-rails - 将模型传递给组件

使用 hyperstack.org 框架,如何在更改正在渲染的模型时减少渲染周期?

当将正在渲染的模型传递给改变该模型的组件时,渲染该模型的所有组件都会在任何突变时重新渲染。这很好,除非突变是每次按键,因为这意味着所有组件都会在每次按键时重新渲染。

例如,如果我们有这张表:

而这个组件(用于编辑和新建):

基础表(来自第一个代码示例)在每次按键时重新呈现,原因如下:

由于重新渲染的数量,这导致打字看起来很慢。

我应该为每个字段保留一个本地状态变量,然后只在保存时改变模型字段吗?

0 投票
1 回答
35 浏览

ruby-on-rails - 有没有办法断开控制台消息与 Hyperstack 消息队列的连接?

在 Hyperstack 中,每个状态更改都通过 websocket 机制进入消息队列,以通知每个应用程序客户端模型/应用程序状态更改。因此,如果您从我的浏览器会话中更新模型,当时连接的其他所有人都可以在他们的会话中看到它(如果有必要的权限)。

这甚至可以通过控制台“会话”完成。您从 Rails 控制台更改模型,更改会自动传播到所有连接的 Web 客户端。

为此,Web 应用程序部分必须是可操作的(即 Rails 服务器,必须启动并运行)。

问题是在两种情况下您可能不希望控制台更新传播到客户端:

  1. 当 rails 服务器出于任何原因无法运行并且您希望通过其控制台与应用程序交互时(直到 rails 服务器再次启动)

  2. 您希望通过控制台或 rake 任务执行批量更新,并且不希望让客户了解情况的开销。

有没有办法从控制台或某种切换方法快速关闭消息传递?

0 投票
1 回答
57 浏览

ruby - Hyperstack 和 MaterialUI 抽屉切换状态导致抽屉反复打开和关闭

我正在 Hyperstack 项目中使用 MaterialUI 实现标题栏和菜单抽屉。我有两个组件,一个Header组件和一个Menu组件。该Menu组件是可扩展的Drawer。我将状态存储在Header组件中,并将它和一个处理程序传递给Menu组件,以在单击抽屉关闭按钮时切换抽屉状态。出于某种原因,抽屉只是快速而反复地打开和关闭。

在我实现关闭按钮之前,抽屉打开得很好。我尝试将状态向上移动到主应用程序组件并将其一直向下传递,但它会产生相同的结果。我尝试在组件上设置一个类函数并Header从组件内调用它,Menu而不是传入事件处理程序。

Header组件_

Menu组件_

我希望抽屉在打开按钮单击时打开并在单击关闭按钮时关闭,但它只是非常迅速地打开和关闭。

0 投票
1 回答
48 浏览

html - Hyperstack 将动态类添加到手动类名

在更新 Hyperstack 的语法时,我需要向一些常规类添加一个动态类:

应该变成这样:

我似乎无法弄清楚如何/是否可以一起声明常规类和动态类。

0 投票
1 回答
59 浏览

javascript - 不会保存记录的属性

我正在尝试升级此博客文章中显示的示例

https://medium.com/@mitch_23203/the-exact-same-app-in-hyperstack-7f281cef46ca

使用超堆栈模型,如后续博客文章,但它不起作用。

这是我更改后的代码:

一切似乎都运行良好,新的 Todo 被保存,但属性为零。就像标题没有保存一样。

0 投票
2 回答
114 浏览

ruby - How to import Material-Icons in Hyperstack?

I try to use MaterialUi's <MenuIcon /> (like here https://material-ui.com/demos/app-bar/) in my Hyperstack-App but I get error below.

I installed @material-ui/icons with yarn, then I imported it in /app/javascript/packs/application.js like so

then ran bin/webpack without errors.

Then I have something like this in a component:

But I get an error:

What am I doing wrong?

Thanks a lot for your help :)

0 投票
1 回答
84 浏览

javascript - Hyperstack 中的高阶组件

javascript 库有一个常见的用例,您希望用高阶组件来装饰您的组件。

例如,material-ui 库包含一个样式化的高阶组件withStyles

在javascript中,你会做

你如何在 Hyperstack 中实现同样的目标?

0 投票
0 回答
74 浏览

javascript - 在 Hyperstack 中使用 javascript 代替蛋白石

Hyperstack 的所有文档都围绕着将 Hyperstack 与 Opal 结合使用。

是否可以将 Hyperstack 的同构模型与 javascript 一起使用,而不是 Opal?