function func(err, data, cb) {
if(!err) {
cb(data);
} else {
console.log(err);
}
}
setTimeout(func.bind(null, new Error('error'), 'hello world', (data) => {
console.log(data);
}), 3000);
так я хочу в элс выводить ошибку, если она у меня выпадет.
setTimeout(func.bind(null, new Error('error') ...
if(!err)...
err
должен быть в аргументе cb
. const oncreate = once((err, socket) => {
if (err) {
process.nextTick(() => this.emit('error', err));
} else {
this.onSocket(socket);
}
});
try {
const newSocket = optsWithoutSignal.createConnection(optsWithoutSignal,
oncreate);
if (newSocket) {
oncreate(null, newSocket);
}
} catch (err) {
oncreate(err);
}
getConnections(callback) {
this._request({
cmd: 'NODE_SOCKET_GET_COUNT',
key: this.key
}, 'NODE_SOCKET_COUNT', false, (err, msg) => {
if (err) return callback(err);
callback(null, msg.count);
});
}
function func(err, data, cb) {
if(!err) {
cb(null, data);
} else {
cb(err, data);
}
}
// вызов с ошибкой
setTimeout(func.bind(null, new Error('error'), 'hello world', (err, data) => {
if(err){
console.log('ошибка', err);
}else{
console.log('данные', data);
}
}), 2000);
// вызов без ошибки
setTimeout(func.bind(null, null, 'hello world', (err, data) => {
if(err){
console.log('ошибка', err);
}else{
console.log('данные', data);
}
}), 4000);
function func(err, data, cb) {
if(!err) {
cb(null, data);
} else {
cb(err, data);
}
}
так, а где происходит инициализация ошибки?
// вызов с ошибкой
setTimeout(func.bind(null, new Error('error'), 'hello world', (err, data) => {
if(err){
console.log('ошибка', err);
}else{
console.log('данные', data);
}
}), 2000);
// вызов без ошибки
setTimeout(func.bind(null, null, 'hello world', (err, data) => {
if(err){
console.log('ошибка', err);
}else{
console.log('данные', data);
}
}), 4000);