我正在使用 Polymer 开发 Web 前端。我有一个使用其他 Web 组件的 Web 组件,例如纸张输入或一些自定义 Web 组件。出于演示目的,我使用 sinon fake xhr 服务器来模拟一些弹性搜索请求,这对于测试来说非常好。在 webcomponents 中,我使用聚合物 appLocalizeBehavior 从 json 文件加载一些语言环境。AppLocalizeBehavior 使用 iron-request 通过 url 加载文件。我将 sinon 配置为过滤和排除包括“locales.json”在内的所有 url,如下所示:
this._server = sinon.fakeServer.create();
this._server.autoRespond = true;
this._server.xhr.useFilters = true;
this._server.xhr.addFilter(function(method, url) {
return url.includes("locales.json");
});
如果我禁用 xhr 假服务器,所有组件的语言环境都会正确加载。但是,如果我启用了 sinon,似乎正在加载语言环境,但 sinon 以某种方式以错误的编码返回它们。
有人面临类似的问题吗?