Здравствуйте, LandWarrior, Вы писали:
LW>А вот тут начинается полная хрень, потому как я броузере я получаю this.customers == NULL, если без замыканий. Как обойтись без них?
Может быть метод вызывается раньше чем приходят данные? С knockout очень давно не работал...
Я бы для начала избавился от:
1. any везде где можно, если везде использовать any, то смысл использовать TS? Вместе any использовать конкретные классы/интерфейсы для данных
2. callback-hell, допустим вместо:
var svc = new CustomerServiceModule.CustomerService();
svc.GetAll(function (dt) {
var customerUI = new CustomerUIModule.CustomerUIModel(svc, dt);
ko.applyBindings(customerUI);
});
использовать
var svc = new CustomerServiceModule.CustomerService();
const customers = await svc.GetAll();
const customerUI = new CustomerUIModule.CustomerUIModel(svc, customers);
ko.applyBindings(customerUI);
Завести tsconfig файл где четко указать в какую версию яваскрипта компилировать (ну и очень рекомендую strict: true если с нуля проект)