2016-08-16 8 views
1

Я использую следующий код, который работает частично, поскольку есть случаи, когда содержимое не передается.Пропустить контекст для модуля узла

var app = require('buildersApps'); 
app.addContent({ 
    folderPath: __dirname + '/content/' 
}); 
app.start(); 

Чтобы решить эту проблему (контекст) я добавляю следующее с связывания() метода который работает, но мой вопрос, есть ли лучше/уборщик способ сделать это?

var app = require('buildersApps'); 
app.addContent({ 
    folderPath: __dirname + '/content/' 
}).then(app.start.bind(app)); 
+0

Кажется, что ваше решение не имеет ничего общего с 'bind', а используется' then' (по обещанию, что 'addContent' возвращает) – Bergi

+1

Более идиоматическим ES6 будет' .then (x => app.start (х)) ' – Bergi

ответ

1

Да, вы можете использовать анонимную функцию как этот

var app = require('buildersApps'); 
app.addContent({ 
    folderPath: __dirname + '/content/' 
}).then(() => { 
    app.start(); 
}); 

это на самом деле общий шаблон.