0
我已經創建了使用kriskowal/q模塊的承諾,但是當我嘗試使用它時,它並沒有進入任何函數,無論是開心路徑還是錯誤路徑。JavaScript Kriskowal Q JS承諾不工作
我的承諾是創造類
var Q = require('q');
var Test = function() {
};
Test.prototype = (function() {
var testt = function() {
var deferred = Q.defer();
var x = 5;
if (x === 5){
deferred.resolve('resolved');
}else{
deferred.error(new Error('error'));
}
return deferred.promise;
};
return {
testt : testt
}
}());
module.exports = Test;
,這就是我如何去使用它
var Test = require('../src/js/test.js');
describe("Test", function() {
"use strict";
var test = null;
beforeEach(function() {
test = new Test();
});
it("should return the promise", function() {
test.testt().then(
function (a) {
console.log(a);
},
function (b) {
console.error(b);
}
);
});
});
,因爲這是一個茉莉花測試類,如果你不熟悉的茉莉花,是什麼裏面'它'功能是我如何使用承諾的邏輯。 'testt'是我創造諾言的功能。爲了進一步說明,我附上了整個代碼。
問題:它
如果拒絕承諾,調用'done.fail(b)'將測試標記爲失敗 –