NgDowngrade: двусторонняя привязка работает только одним способом

#angularjs #angular #ng-upgrade

#angularjs #angular #ng-upgrade

Вопрос:

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

Когда я изменяю свойство bound в AngularJS, это изменение отражается в компоненте Angular. Когда я изменяю свойство в компоненте Angular, я вижу изменение внутри компонента Angular, но не в компоненте AngularJS.

Вот рабочий пример: https://stackblitz.com/edit/angular-ng-upgrade-downgrade-9fzfz6

  1. нажмите на привязку AngularJS
  2. Введите что-нибудь в верхний ввод (компонент AngularJS)
  3. Посмотрите, что это отражается на нижнем входе (угловой компонент)
  4. Введите нижний ввод
  5. Убедитесь, что это не отражается на верхнем входе

Комментарии:

1. используя @input здесь, в компоненте angular, вы сможете вводить данные только в компонент angular (значение обратно не передается ). Проблема здесь заключается не в использовании двусторонней привязки, а во взаимодействии компонента angular с компонентом angularjs. вам нужно будет передать обновленное значение из angular component в angularjs component

2. вы не можете передавать данные от дочернего компонента к родительскому компоненту с помощью @input , здесь связь осуществляется только одним способом ( от родительского к дочернему [angularjs —> angular ] ) Это объясняет изменения, которые не отражаются в родительском компоненте при изменении значения в дочернем компоненте