Re[3]: TypeScript+Knockout - покритикуйте проект
От: Twirl Швеция  
Дата: 18.10.18 12:59
Оценка:
Здравствуйте, 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 если с нуля проект)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.