"Q js is undefined." 在测试方法(karma+jasmine)中尝试解决 aurelia-breeze 的承诺时
"Q js is undefined." while trying to resolve promise from aurelia-breeze in test method(karma+jasmine)
在 aurelia(typescript + breeze) 应用程序。
使用的测试框架是karma+jasmine
。
aurelia-breeze
包的版本是 1.0.0
Aurelia breeze makes use of es promise resolver instead of Q.js, but the
test method is searching for Q.js to resolve the promise returned
from breeze.
我已尝试将 Q
库添加到 spec
文件中的 window
对象。但是 breeze.debug.js
试图在 spec
文件中设置之前从 window
对象访问 Q
js。
这没有解决问题。
请帮我解决这个问题。
像这样的东西应该可以工作:
import {configure as configureAureliaBreeze} from 'aurelia-breeze/index';
import {Container} from 'aurelia-dependency-injection';
const container = new Container();
configureAureliaBreeze({ container, globalResources: () => {} });
// ... tests ...
Breeze 的承诺取决于 Q,jQuery 的 ajax。 Aurelia-breeze 分别使用 ES6 promises 和 aurelia http-client 填充这些依赖项。上面的代码有效地模拟了当 运行 你的 aurelia 应用程序时 .plugin('aurelia-breeze')
调用中会发生什么。
https://github.com/jdanyow/aurelia-breeze/blob/master/src/index.js#L15-L16
在 aurelia(typescript + breeze) 应用程序。
使用的测试框架是karma+jasmine
。
aurelia-breeze
包的版本是 1.0.0
Aurelia breeze makes use of es promise resolver instead of Q.js, but the test method is searching for Q.js to resolve the promise returned from breeze.
我已尝试将 Q
库添加到 spec
文件中的 window
对象。但是 breeze.debug.js
试图在 spec
文件中设置之前从 window
对象访问 Q
js。
这没有解决问题。
请帮我解决这个问题。
像这样的东西应该可以工作:
import {configure as configureAureliaBreeze} from 'aurelia-breeze/index';
import {Container} from 'aurelia-dependency-injection';
const container = new Container();
configureAureliaBreeze({ container, globalResources: () => {} });
// ... tests ...
Breeze 的承诺取决于 Q,jQuery 的 ajax。 Aurelia-breeze 分别使用 ES6 promises 和 aurelia http-client 填充这些依赖项。上面的代码有效地模拟了当 运行 你的 aurelia 应用程序时 .plugin('aurelia-breeze')
调用中会发生什么。
https://github.com/jdanyow/aurelia-breeze/blob/master/src/index.js#L15-L16