0
我正在嘗試爲fileupload功能創建包裝模塊。 下面的代碼看起來很適合我的場景,最近我遇到了rxjs,並想知道我可以如何將以下方法轉換爲Observable。什麼將比承諾更有優勢。Rxjs承諾方法替代
```
// dual-module.js
var Q = require('q');
module.exports = {
getFullName: function (firstName, lastName, callback) {
var deferred = Q.defer();
if (firstName && lastName) {
var fullName = firstName + " " + lastName;
deferred.resolve(fullName);
}
else {
deferred.reject("First and last name must be passed.");
}
deferred.promise.nodeify(callback);
return deferred.promise;
}
}
```
var DualModule = require('dual-module');
DualModule.getFullName("John", "Doe")
.then(function (result) {
// result returns "John Doe"
})
.fail(function (error) {
// error returns error message if either first or last name are null or undefined
});
var DualModule = require('dual-module');
DualModule.getFullName("John", "Doe", function (error, result) {
// error returns error message if either first or last name are null or undefined
// result returns "John Doe"
});
感謝這個不錯, – tomalex