Я хочу использовать формы на основе шаблонов в Angular 2, и мне нужно получить доступ к текущему ngForm в моей директиве, как к локальному свойству, и я не хочу передавать их в качестве параметра.
моя форма выглядит так:
<form #frm="ngForm" (ngSubmit)="save(frm)">
<input [(ngModel)]="user.name" #name="ngForm" type="text">
<a (click)="showFrm()" class="btn btn-default">Show Frm</a>
</form>
и в моем компоненте
@Component({
selector: 'addUser',
templateUrl: 'Templates/AddUser',
})
export class AddUserComponent implements CanDeactivate {
public user: User;
// how can I use this without defining the whole form
// in my component I only want to use ngModel
public frm : ngForm | ControlGroup;
public showFrm() : void{
//logs undefined on the console
console.log(this.frm);
}
}
Возможно ли это, потому что мне нужно проверить, действительно ли myFrm действителен или был затронут в функции, где я не могу передать текущую форму в качестве параметра, например, "routerCanDeactivate", и я не хочу использовать формы, управляемые моделями, слишком много времени, чтобы писать в коде, и мне нравится привязка модели старой школы ng1.
Я обновил мой пример, и frm не известен в компоненте.