问题标签 [ember-octane]

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

javascript - 将观察者转换为辛烷值版本的正确方法是什么?

我试图将我所有的 ember 组件转换为 OCTANE 版本。但我有一个更大的疑问。如何将observer代码转换为 OCTANE 版本?例如,

如何将观察者更新为辛烷值?有什么想法请...

注意:我尝试使用“@observer”,但它在组件内不起作用。

0 投票
0 回答
71 浏览

json - Ember Data JSON API - 如何使用相关链接 URL 发出 PATCH 请求

灰烬版本:3.23

余烬数据:3.23

links我想通过向资源关系中的对象中提供的 URL 发出请求来修补关系:

鉴于上述情况,我想发出PATCH /api/appointments/1/relationships/status请求。

我想做的是:

然而,上面返回一个save() is not a function关于状态对象的错误(状态对象是一个 ember 代理对象)。

我知道我可以做到:

但是不,这不是我想要的要求。这将向/api/statuses/1没有约会上下文的主要资源发出请求。

我也知道我可以保存约会并获取关系更新,但这会使links我设置的完全无用。我希望能够请求我为关系设置的链接。

本质上,我希望能够遵循 JSON:API 规范的这一部分:更新关系

如何save()向使用关系链接的关系发出请求?

0 投票
1 回答
136 浏览

javascript - 将 store.queryRecord 与 Ember Octane 一起使用时出现错误“str.replace 不是函数”

我正在学习 Embercasts课程(Ember + Rails)。对于截屏视频,他们使用了 Ember 3.0,但我使用的是 Octane。

在一个视频中,实现了自定义服务。这是我的版本的样子:

load从路由调用的函数中,this.store.queryRecord()会导致错误:

相关线路是

这是UserAdapter

这里有什么问题?

0 投票
1 回答
98 浏览

javascript - Ember:this.router.refresh() 在 ember 辛烷值中引发错误

这是我在刷新路线时使用的以下代码

在调用 this.router.refresh() 时,它会抛出刷新功能不存在。

0 投票
0 回答
48 浏览

unit-testing - 测试 Service Worker Ember Octane

我正在使用ember-service-worker为我的应用程序实现离线行为,到目前为止它可以满足我的需要,但我想知道如何为我的应用程序编写一些测试,以测试服务人员是否正确地完成了他的工作因为这打破了我当前的集成测试。

在离线模式下,我使用 indexeddb 来捕获请求,然后在用户有更稳定的连接时重新同步数据。

非常感谢您的帮助:D

0 投票
1 回答
130 浏览

caching - Ember Octane 中缓存的最佳方法

我有一个运行 Ember@3.20 的项目。我们目前正在从经典组件迁移到基于微光的组件,并且遇到了一些昂贵的计算模式,这些模式将从缓存中受益。

我的问题是,为微光组件缓存功能的最佳方法是什么?看起来目前有几种方法可以做到这一点:

  1. @cached via tracked-toolbox - 我相信这是在 ember 缓存 api 之前发布的。我没有在引擎盖下偷看,但它有一个 @cached 装饰器,它可能与未来的 ember @cached 发生冲突。
  2. ember-cache-primitive-polyfill - 在Ember 文档中提到作为 ember 缓存 API (3.22) 的 polyfill,但语法不如 @cached 装饰器简洁
  3. ember-cached-decorator- polyfill - 与RFC566相关似乎基于选项 2,语法更符合人体工程学
  4. 升级到 3.22 - 尽量避免碰撞 ember,除非有显着的好处。乍一看,我没有看到这里包含@cached。

关于 getter 应该有多昂贵以保证它被缓存的任何其他见解/指南?例如,防止重新渲染似乎是一个相当明显的用例,但开发人员可能会认为“昂贵”的计算范围很广。

0 投票
0 回答
70 浏览

javascript - 使用 EmberJS 的两种方式绑定在对象数组中不起作用

我正在尝试更新 EmberJS(版本 3.26)中对象数组的内容。我可以更新内容。但它没有反映在我的用户界面中。我认为,我的问题与双向绑定有关。

我已经为此添加了一个可跟踪的装饰器(@tracked)。它适用于正常变量。但不适用于对象数组。请在下面查看我的 JS 代码:

我添加了一种更新content数组的方法。它正在正确更新我的阵列。但这些变化并没有反映我的 UI。我的用户界面代码如下:

我正在使用ember 简单树将上述数组显示为树。任何帮助将不胜感激!

0 投票
1 回答
63 浏览

javascript - 来自路由的 Emberjs 模型在控制器中返回未定义

我的 Ember 应用程序有一个奇怪的行为。我无法理解它。基本上我使用的是 Ember octane,我想从我routecontroller.

这是我的路线

这是我的控制器

console.log(this.model) 我得到undefined.

但是当我简单地做一个时,console.log(this) 我得到了一个带有模型属性的整个对象chatmessages

看到这张图片

这太疯狂了

0 投票
1 回答
41 浏览

templates - Ember Octane - 在模板中显示来自控制器的跟踪数组的内容?

我正在尝试从模板中呈现访问存储在控制器中的数组的内容。数组开始为空,但使用控制器中的方法将对象添加到其中:

我可以从模板调用setUpArray()并确认它按预期运行并将跟踪变量设置为两个对象的数组。

但是,我似乎无法在模板中显示与 displayArray 相关的任何内容。我尝试了以下方法:

据我所知,该问题仅发生在数组或至少包含对象的数组中。我能够很好地显示在控制器中设置的字符串或其他跟踪变量。

有谁知道为什么 Ember 没有显示这个?

0 投票
1 回答
27 浏览

ember.js - 在 Ember Octane 中一次打开一个组件实例

假设我们有answer具有isOpen属性的组件。默认情况下isOpenfalse当用户单击 时,answer我们将 更改isOpentrue

我们正在显示答案列表。answer当用户点击 second 时,我们如何关闭 first answer

我正在考虑answersSync使用globalIsOpen = false.