Я пытаюсь создать очень простой компонент в Angular 2.0, настраиваемом выпадающем меню под названием <my-select>
.Двунаправленное связывание с @Input
Я прохожу model
в <my-select>
, который я ожидаю быть обновленным, когда конечный пользователь выбирает вариант из выпадающего списка.
Plunker: http://plnkr.co/edit/iY1hG0q9rsgrR6ltKXW4?p=preview
Как видно из Plunker, только model
объект локального до <my-select>
обновляется, не model
объект, который я прошел в от <app>
. Что мне здесь не хватает? Как одно двустороннее связывание с пользовательским компонентом?
В угловом 1.x это было так же просто, как передать переменную в $scope
directive
с использованием =
.
Это работает. Подробный и неинтуитивный, но он работает. Есть ли у вас какие-либо предпосылки, почему он был разработан таким образом? Угловой 1.x обрабатывается гораздо более изящно и на 90% меньше кода. – lux
Это стиль React и делает двустороннюю привязку намного проще в реализации и намного более эффективную. От родительского к дочернему привязке данных распространяются изменения значений, вверх - событиями. Этот пост должен дать некоторое представление http://victorsavkin.com/post/110170125256/change-detection-in-angular-2 –
Спасибо, я просто используется для 'scope: {model: '='}', который сделал все тяжелый подъем, без ввода, вывода, EventEmitters и т. д. Я прочитаю. Кажется, что преимущество - производительность, а не читаемость. – lux