问题标签 [ember-cli-mirage]

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 投票
0 回答
75 浏览

ember.js - 如何让 Mirage 透传节点模块访问?

我正在使用 SimpleMDE,它似乎向/node_modules/typo-js/dictionaries/en_US/en_US.dic内部发送请求。

在此处输入图像描述

在此处输入图像描述

如何使用 Mirage 传递这个 GET 请求?

我正在使用以下设置但没有效果。

海市蜃楼配置文件中的代码,

0 投票
0 回答
64 浏览

javascript - [Ember][Test][Model] 如何测试模型感知组件

我是 ember 社区的新手,我创建了一个组件,它基于给定的 DS.Model 对象生成其内容:

它工作得很好,但我很坚持测试这个。确实我试过:

并使用海市蜃楼来伪造虚拟物体。但它继续失败并出现以下错误:

有人有想法吗?还是我做错了什么?

谢谢

编辑:添加用于代码理解的 ember 函数

0 投票
1 回答
59 浏览

javascript - 无法在模板中使用相关模型(EmberJS)

这就是我所拥有的。
2 种模型:“注释”和“用户”。Note 有一个名为“user”的字段,它使复制“1 个用户对许多注释”。数据取自幻影。

备注型号:

用户型号:

海市蜃楼代码:

检索用户模型(正如我在 EmberInspector 看到的那样)。
当我{{model.user.username}}在模板内使用时,输出为空。
当我使用{{log model.user}}.

我认为这个问题可能与我在构建笔记列表时在没有“用户”模型的情况下提前检索“笔记”模型有关。

非常感谢您的帮助!

0 投票
0 回答
937 浏览

ember.js - 如何在 Mirage 中模拟二进制响应

使用 Mirage 我需要模拟我的 GET 请求,该请求以二进制字符串的形式返回数据(格式为 gzip)。这是我第一次使用 mirage,我不知道我是否在嘲笑二进制响应,我应该返回一个有效值吗?这就是我现在嘲笑它的方式。

这是我的场景:收到来自后端的响应后,我只需将 repose 转换为 blob 并将其下载为文件。如果我在模拟数据时应该创建一个有效的二进制数据,我该如何使用 Mirage 呢?我应该将它作为文件存储在某处并将其用作模拟响应吗?如果有人可以帮助我,我将不胜感激。

0 投票
1 回答
221 浏览

ember.js - Ember 海市蜃楼工厂使用 fakerjs 创建一个数组

我希望使用 faker.js 在我的 Ember mirage 工厂中返回一系列电子邮件。

这是代码片段,

我想使用 faker 来动态创建 emails 数组。这已经在fakerjs github中作为问题提出。但是建议的解决方法不能应用于这种情况。

请帮忙。

0 投票
1 回答
176 浏览

ember.js - 无法从验收测试中修改 Ember mirage 夹具

我有一个夹具创建,看起来有点像这样。

在我的验收测试中,我正在使用这个数组。但在我的测试中,我想修改这个 people 数组并添加,假设另一个对象

注意:我不想使用工厂,因为我不想动态生成所有数据,所以我想从固定装置中获取这个数组,将我的新对象推送到这个数组中,然后返回它。正确的方法是什么?

注意2:不建议在fixtures本身中添加这个对象,因为我想根据我测试中的条件动态地将item添加到fixtures中。

0 投票
1 回答
426 浏览

ember.js - XHR 对象中缺少 ember-cli-mirage 响应标头

试图了解使用我的 api 与 ember-cli-mirage 之间的响应不一致。

我有一个处理程序正在等待对 POST 请求的响应以对用户进行身份验证。处理程序的预期参数是response,statusxhr:

(例如.then(function(response, status, xhr) {...})。

使用我的 API,我收到了我期望的结果——响应是数据,状态是 statusText,xhr 是 xhr 对象。然而,使用 ember-cli-mirage 一切都会得到响应(有点),并且 status 和 xhr 都是未定义的。

我的代码片段如下:

海市蜃楼/config.js

身份验证器/devise.js

我相信我做的一切都是正确的,但众所周知我是错的:)。任何帮助深表感谢。

0 投票
2 回答
218 浏览

ember.js - 带有 Mirage 的 EmberJS 未完全填充记录

我有一个带有 mirage 和序列化程序的 Ember 模型。当我向模型添加一些新字段时,尽管它们在有效负载中,但它们永远不会被填充:

serializers/application.js

models/property.js

夹具示例:

normalizeArrayResponse函数中,检查是否property.property_type存在于payload.properties.forEach循环中,但一旦它成为记录,则在模型首次创建后添加的字段(突出显示//new的始终未定义(property.get('property_type')例如)。

0 投票
1 回答
226 浏览

serialization - Mirage 序列化程序在包含和嵌入某些模型时丢弃 Id

我有海市蜃楼的问题。

我正在定义一个扩展的序列化ActiveModelSerializer程序serializeIds: 'always',在这种情况下,模型使用关系模型id进行序列化。

但是当我想在我使用的序列化内容中包含一些模型时include: ['someModel'],在这种情况下someModel会成功包含,但其余关系的id将被忽略。

我怎样才能包括ID

0 投票
1 回答
560 浏览

ajax - ember.js:使用 ajax 请求进行验收测试

我正在编写一个验收测试,其中用户填写表格并向第三方资源发出 ajax 请求。我正在用Ember CLI Mirage模拟请求。

我正在编写一个基本的工作示例,我将在测试通过后对其进行重构。我知道我需要将我的请求抽象为一个服务或实用程序,但我不喜欢在没有围绕它的工作测试的情况下重构我的代码。

但是,我的代码似乎可以正常工作,当我返回更改模板中某些内容的结果时,我无法通过测试。

需要注意的是:我正在模拟的第三方 API 并不平静。

海市蜃楼配置如下:

我还没有设置 Web 服务的规范 URL。它应该是一个外部服务。

我的组件:

你会看到我输出到控制台两次,所以我可以调试它。我不确定这是在编写测​​试时进行调试的正确方法。

这是我的模板:

最后,我的测试:

控制台日志(我认为)告诉我,在我断言页面向用户显示结果之前,承诺已经解决。但我不能让它通过!一旦我设置 的值result,它就会失败。

任何帮助,非常感谢。