Как я могу получить выражение привязки шаблона в виде строки в Angular2?

Есть ли способ получить строку «myModel» в моем компоненте?

import { Component } from '@angular/core';

@Component({
  selector: 'my-app',
  template: `<input type="text" [(ngModel)]="myModel"/>`
})
export class AppComponent { // how can I access "myModel" here? }

person Shackles    schedule 22.03.2017    source источник
comment
Это было бы довольно просто ... может быть, посмотреть учебники ?? ;) angular.io/docs/ts/latest/tutorial/toh- pt1.html   -  person AJT82    schedule 22.03.2017
comment
Я имею в виду не значение myModel, а строковый литерал myModel.   -  person Shackles    schedule 24.03.2017


Ответы (2)


Просто войдите в него с помощью

this.myModel

и объявить это раньше.

myModel:string;
person sascha10000    schedule 22.03.2017
comment
Нет, извините, я имею в виду не значение myModel, а строковый литерал myModel. - person Shackles; 24.03.2017
comment
Я не понимаю вашего варианта использования? ngModel связывает значение ввода с данной переменной в вашем случае myModel. Пожалуйста, проясните свой вопрос. Похоже, вы не понимаете, для чего нужна привязка ... Разве вы не хотите передавать значение вашему компоненту? - person sascha10000; 25.03.2017
comment
вариант использования будет простым. предполагая, что у нас есть компонент адреса, а основной компонент привязан к: model.HomeAddress и model.PostalAddress (через свойство или ngModel - зависит от реализации), тогда я хотел бы знать выражение привязки, поэтому я хотел бы получить либо model.HomeAddress, либо строка model.PostalAddress. если не понимаешь почему, не спрашивай, если не знаешь, как делать, не отвечай. просто есть разумный UC (основанный на композиции) там, где это может понадобиться. - person baHI; 11.12.2017
comment
точно так же, как можно переводить / оценивать выражение: stackoverflow.com/questions/39765063/, также имеет смысл взять это выражение: D - person baHI; 11.12.2017
comment
Хорошо, я должен признать, что вы указали это в своем вопросе, но для меня это было немного неясно в отношении вариантов использования, которые я мог придумать, но это не имеет значения. Если вам все еще нужно возможное решение, ViewChild-Decorator может помочь angular.io/api/core/ViewChild. Я не смог проверить это, потому что уже немного поздно. - person sascha10000; 12.12.2017

Ближайший к NgModel, где я мог подойти, находился в ctor через injector.view, но нужно внести некоторые изменения на основе http://blog.rangle.io/angular-2-ngmodel-and-custom-form-components/, чтобы узнать, смогу ли я получить их выражения. если кто-то получит ответ раньше меня, пожалуйста, опубликуйте его здесь. спасибо.

person baHI    schedule 11.12.2017
comment
попробовал также компонент с привязкой ngModel (см. URL-адрес выше), но не удалось получить это выражение - person baHI; 12.12.2017