问题标签 [glimmer.js]
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.
ember.js - 无需修饰符即可从 Glimmer 组件访问 HTML 元素
是否可以在不使用 did-insert 帮助器的情况下访问 Glimmer 组件中的组件的 HTML 元素?像this.element
或this.elementId
在非微光元素中一样简单的东西。
我创建了一个扩展 Component 的类,我的所有组件都将扩展它。创建“特殊”组件后,我想使用它的 DOM 进行操作。
ember.js - 如何在 Ember Octane 中更新嵌套状态
所以我的情况如下:我有一个包含几个输入字段的组件,这些字段代表一个联系人并填充了来自服务的数据:
每个字段代表一个可以通过以下方式访问的属性
我将属性保存为 JS 对象,以便在使用它们时轻松过滤掉空字段,并@tracked
像这样跟踪它:
但是,属性不会在组件中正确重新呈现,并且文本字段不会更新。
我将不胜感激任何帮助!谢谢!
javascript - Ember 组件的动态模板参数
我遇到了一个使用微光组件渲染LinkTo
组件的情况。问题在于LinkTo
将 where@model={{undefined}}
和省略@model
参数的情况视为 2 个不同的情况。这是因为它的默认值是UNDEFINED 的特殊值。发生这种情况时,组件使用 JS 进行转换,即 href 是#
,因此您不能使用在新选项卡中打开之类的浏览器命令来打开生成的链接。所以我尝试使用 inline if
s
但是,正如我所料,这不起作用。我不得不求助于if
像这样的多个块:
这可行,但相当冗长并且需要大量重复。有没有办法@model
只在指定给父组件时才动态传递?
ember.js - 使用 MDX 语法在 Storybook 中渲染 EmberJS / Glimmer 组件
在自定义 MDX 页面(不是故事)中嵌入 EmberJS/Glimmer 组件的任何经验?基本上我们需要这样的东西:
由于 MDX 可以处理 JSX 格式,我们猜测我们需要将 Handlebars 模板包装在一个自定义的 React 组件中(我们注意到 React 的<Story>
接受对象为{{children}}
,
但我们不希望页面呈现故事,而是呈现自定义页面)。任何提示如何实现这一目标?或者这甚至是可能的atm?
ember.js - Ember Octane,跟踪的属性未重新渲染模板
来自 React 背景,我在理解 EmberJs“跟踪”概念时遇到了问题。在纸面上,它不应该与“反应状态”不同。
所以我的理解是,当我们用@tracked
它注释一个属性时,当这个属性发生变化时应该导致重新渲染。
请看下面的代码:
产品项目组件
模板,
当我第一次渲染组件时,我正在检查当前项目是否存在于购物车中{{did-insert (fn this.checkItemInCart @item.id)}}
,如果它存在,我将跟踪属性切换 @tracked addedToCart = false;
为 true,否则为 false。
理论上,一旦在cartService
. 它仅在我转到另一个页面然后返回时才有效。
但是没有重新渲染页面。有人可以帮助我了解我可能做错了什么吗?
先感谢您
javascript - 动态确定仅模板 Ember glimmer 组件的存在?
我知道要动态确定 Ember 上某个组件的存在,我们可以使用此处或此处说明的解决方案。
我们有一个助手使用.hasRegistration('component:${component}')
只要定义了 .js 文件,这也适用于 Glimmer 组件,但不适用于仅模板的 Glimmer 组件。在这种情况下,该组件似乎没有注册。
有谁知道也适用于仅模板微光组件的解决方案?
ember.js - Ember 中 LinkTo 组件中的动态模型
我正在使用 Ember 3.18,我面临以下问题。考虑以下路线:
现在,在我的 hbs 文件中,我正在尝试使用单个 LinkTo 转换到上述路由。如您所见,只有第二条路线需要模型属性。简单来说,我想将以下 2 合并为一行。
如您所见,我要求模型属性在某些情况下消失并在某些情况下可用。
请帮忙。