Я пытаюсь использовать бэкэнд узла с моим угловым скриптом, используя Q, чтобы обещать-fy метод fs. Использование обычного метода обратного вызова работает, однако здесь ничего не возвращается в Angular. На консоли ничего не печатается, и никакая ошибка не возвращается в консоли или в терминале, где работает узел. Что я пропустил?Экспресс с Q отложенным, не отвечающим на запросы
var express = require('express');
var app = express();
var router = express.Router();
var FS = require('fs');
var Q = require('q');
app.use('/bower_components', express.static(__dirname + '/bower_components'));
app.use('/dist', express.static(__dirname + '/dist'));
app.get('/', function(req, res) {
res.sendfile('./index.html');
});
app.get('/test', function(req, res){
// res.send('asdf')
var deferred = Q.defer();
FS.readFile("gulpfile.js", "utf-8", function (error, text) {
console.log('error', error);
console.log('in read file')
if (error) {
deferred.reject(new Error(error));
} else {
res.send(text);
deferred.resolve(text);
}
});
return deferred.promise;
});
app.listen(5000);
'deferred.resolve (текст)' в файле узла?! затем 'return deferred.promise;'! –
@ IsmailRBOUH моя ошибка, это была плохая копия. Это то, что есть. – 1252748
Но вам все равно нужно решить ваш отложенный 'deferred.resolve (text)'! –