yandex-ui / noscript

Noscript: JavaScript MVC Framework for building SPA
http://yandex-ui.github.io/noscript/
MIT License
34 stars 22 forks source link

ns.ViewCollection которая зависит от модели коллекции и ещё от какой-то невалидной модели - boom #654

Open chestozo opened 6 years ago

chestozo commented 6 years ago

Есть модель коллекция типа такой:

ns.ViewCollection.define('mega-view-collection', {
    models: {
        'model-collection': false,
        'model-that-can-be-invalid': false
    },
    split: {
        byModel: 'model-collection',
        intoViews: 'collection-item-view'
    }
});

Шаги:

Тут либо править проверку внутри ns.ViewCollection, либо не давать ей зависеть от других моделей - т.е. чтобы коллекция отрисоввывала только модель-коллекцию.

vitkarpov commented 6 years ago

Кажись, проще обернуть коллекцию в другую вьюшку с зависимостью от той, другой модели, чем чинить :)

Хотя, по логике, конечно, коллекция наследник обычной вьюшки и должна все уметь. ср, 30 авг. 2017 г. в 11:18, chestozo notifications@github.com:

Есть модель коллекция типа такой:

ns.ViewCollection.define('mega-view-collection', { models: { 'model-collection': false, 'model-that-can-be-invalid': false }, split: { byModel: 'model-collection', intoViews: 'collection-item-view' }, });

Шаги:

  • первая отрисовка

    • валидная непустая model-collection
    • невалидная model-that-can-be-invalid
    • получаем отрисованную error моду для коллекции
  • вторая отрисовка через вызов view.update() у mega-view-collection

    • получаем ошибку типа Error: [ns.View] Can't find node for 'collection-item-view'

Тут либо править проверку внутри ns.ViewCollection, либо не давать ей зависеть от других моделей ) т.е. чтобы коллекция отрисоввывала только модель-коллекцию.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/yandex-ui/noscript/issues/654, or mute the thread https://github.com/notifications/unsubscribe-auth/AC3Nv6kOS2b7ti5H01MldDJFsGTU14Ufks5sdRq8gaJpZM4PHBnJ .

chestozo commented 6 years ago

Я скорее про то, что ничто не мешает в зависимости коллекции добавить ещё моделей и словить багу )

vitkarpov commented 6 years ago

Ну да, нужно варнинг кидать какой-нибудь :)

ср, 30 авг. 2017 г. в 11:41, chestozo notifications@github.com:

Я скорее про то, что ничто не мешает в зависимости коллекции добавить ещё моделей и словить багу )

— You are receiving this because you commented.

Reply to this email directly, view it on GitHub https://github.com/yandex-ui/noscript/issues/654#issuecomment-325924137, or mute the thread https://github.com/notifications/unsubscribe-auth/AC3Nv7-iYWzw0QKVSBW11YI7jIC-3sHqks5sdSBUgaJpZM4PHBnJ .