Return 表达式类型 Promise<T> 不能分配给类型 Promise<T>?
Return expression type Promise<T> is not assignable to a type Promise<T>?
当我为下面的函数添加 javascript 文档时,它会给我一个警告说
Return expression type Promise<T> is not assignable to a type Promise<T>
使用下面的 return defer.promise 有什么问题还是我把 return 语句放在错误的地方?
/**
*
* @param zname
* @returns {Promise<T>}
*/
this.setInfoFromAPI = function (name) {
var defer = protractor.promise.defer();
var controlFlow = protractor.promise.controlFlow();
httpRequestUtility.getRestfulAPIToken().then(function (accessToken) {
console.log("Access Token is " + accessToken);
controlFlow.wait(
getInfoFromAPI(accessToken, name).then(function (returnData) {
if (String(returnData).match(httpStatusCodeClientErrorRegx)) {
defer.reject('Get Request Error for Zone Info\nResponse Error Code - ' + returnData);
} else {
setUpInfoFromAPI(returnData);
defer.fulfill();
}
}), 60000, 'Get Information').then(function () {
})
});
return defer.promise;
};
尝试使用更明确的 webdriver.promise.Promise
而不是 Promise
:
@returns {webdriver.promise.Promise<T>}
当我为下面的函数添加 javascript 文档时,它会给我一个警告说
Return expression type Promise<T> is not assignable to a type Promise<T>
使用下面的 return defer.promise 有什么问题还是我把 return 语句放在错误的地方?
/**
*
* @param zname
* @returns {Promise<T>}
*/
this.setInfoFromAPI = function (name) {
var defer = protractor.promise.defer();
var controlFlow = protractor.promise.controlFlow();
httpRequestUtility.getRestfulAPIToken().then(function (accessToken) {
console.log("Access Token is " + accessToken);
controlFlow.wait(
getInfoFromAPI(accessToken, name).then(function (returnData) {
if (String(returnData).match(httpStatusCodeClientErrorRegx)) {
defer.reject('Get Request Error for Zone Info\nResponse Error Code - ' + returnData);
} else {
setUpInfoFromAPI(returnData);
defer.fulfill();
}
}), 60000, 'Get Information').then(function () {
})
});
return defer.promise;
};
尝试使用更明确的 webdriver.promise.Promise
而不是 Promise
:
@returns {webdriver.promise.Promise<T>}