6

के साथ "exportAs" सेट "ngModel" के साथ कोई निर्देश नहीं है, मैं अपने आवेदन में कोणीय 2 रूपों का उपयोग कर रहा हूं और मैंने दिए गए लिंक के आधार पर फॉर्म बनाए हैं।कोणीय 2 त्रुटि- आरसी 4 संस्करण

https://angular.io/docs/ts/latest/guide/forms.html

इस में सत्यापन के लिए और रूपों API का उपयोग करने, मैं #name="id" #id="ngModel" तरह ngModel मूल्यों की स्थापना की है और जो स्क्रिप्ट त्रुटि फेंकता है। लेकिन अगर मैंने #id="ngModel" को #id="ngForm" के रूप में सेट किया है तो इसका हल हो गया है। लेकिन मेरे मामले में मुझे अपना मॉडल मान ngModel पर सेट करना होगा।

नीचे मेरा HTML पृष्ठ है।

<form (ngSubmit)="onSubmit()" #myForm="ngForm"> 
    <div class="form-group"> 
    <label class="control-label" for="id">Employee ID</label> 
    <input type="text" class="form-control" required [(ngModel)]="model.id" #name="id" #id="ngModel" > 
    <div [hidden]="id.valid || id.pristine" class="alert alert-danger"> 
     Employee ID is required 
    </div> 
    </div> 
    <div class="form-group"> 
    <label for="name">Employee Name</label> 
    <input type="text" class="form-control" [(ngModel)]="model.name" name="name" #name="ngModel" required> 
     <div [hidden]="name.valid || name.pristine" class="alert alert-danger"> 
     Employee ID is required 
     </div> 
    </div> 
    <div class="form-group"> 
    <label for="DOJ">DOJ</label> 
    <input class="form-control" required [(ngModel)]="model.DOJ" name="DOJ" #DOJ="ngModel" /> 
    <div [hidden]="DOJ.valid || DOJ.pristine" class="alert alert-danger"> 
     DOJ is required 
    </div> 
    </div> 
    <button type="submit" class="btn btn-default" [disabled]="!myForm.form.valid">Submit</button> 
</form> 

नीचे मेरा मुद्दा है।

 EXCEPTION: Template parse errors: 
     There is no directive with "exportAs" set to "ngModel" (" 
     <div> 
      <h1>My Form</h1> 
      <form (ngSubmit)="onSubmit()" [ERROR ->]#myForm="ngModel"> 
      <div class="form-group> 
      <label class="control-label" for="id">Employee"):[email protected]:34 

मैं अधिक प्रश्न और उत्तर के साथ जाँच की है, उनमें से ज्यादातर RC4 को angular2 संस्करण तो मैं RC4 करने के लिए अपने आवेदन को अद्यतन किया है, लेकिन अभी भी मैं इस मुद्दे का सामना करना पड़ रहा अद्यतन करने के लिए कहा।

import {Component} from '@angular/core'; 
import { disableDeprecatedForms, provideForms , NgForm} from '@angular/forms'; 
import {CORE_DIRECTIVES, FORM_DIRECTIVES, FormBuilder,Validators,Control,ControlGroup } from '@angular/common'; 


@Component({ 
selector: 'ej-app',  
templateUrl: 'app/app.component.html', 
directives: [ CORE_DIRECTIVES,FORM_DIRECTIVES] 
}) 
    export class AppComponent { 
    model = new Employees(null,'',''); 
    onSubmit() { alert("values submitted")} 
    constructor() { 
    } 
    } 
     export class Employees { 
     constructor(public id: number,public name: string, public DOJ: String) { } 
} 
+0

आप नए रूपों 'disableDeprecatedForms(), provideForms()' सक्षम और सुनिश्चित करें कि आप '@ कोणीय/common' से रूपों सामान आयात नहीं करते था: आप निम्न का उपयोग कर सकते हैं? –

+0

मैंने अपना प्रश्न संपादित किया है और टीएस फाइल भी जोड़ दी हैं। क्या आप कृपया इसकी जांच कर सकते हैं। इस में मैंने अक्षम किया है DeprecatedForms, प्रदान करें फोरम –

उत्तर

2

नए और पुराने रूपों मॉड्यूल मिश्रण मत करो:

नीचे मेरी ts फ़ाइल है।

import {CORE_DIRECTIVES, FORM_DIRECTIVES, FormBuilder,Validators,Control,ControlGroup } from '@angular/common'; 

आयात @angular/common से आयात सामग्री बनाता है।

bootstrap(AppComponent, [disableDeprecatedForms(), provideForms()]) 

आप नए रूपों का उपयोग करते हैं तो का उपयोग करने के बजाय

import {FORM_DIRECTIVES, FormBuilder,Validators,Control,ControlGroup } from '@angular/forms'; 
+0

मैं '@ कोणीय/रूपों' से नीचे 'आयात {disabledDeprecatedForms, offerForms, NgForm} की तरह बदल गया है; '@ कोणीय/सामान्य' से {CORE_DIRECTIVES} आयात करें; आयात करें {FORM_DIRECTIVES, फॉर्मबिल्डर, सत्यापनकर्ता, नियंत्रण, नियंत्रण समूह} '@ कोणीय/रूपों' से; ' लेकिन अब मैं नई स्क्रिप्ट त्रुटि –

+0

स्क्रिप्ट त्रुटि हूं: अतिरिक्त: ऐप/app.component.html में त्रुटि: 7: 13 प्लेटफ़ॉर्म-browser.umd.js: 1900 अतिरिक्त: ऐप/app.component.html में त्रुटि: 7: 13BrowserDomAdapter.logError @ platform-browser.umd.js: 1 9 00 प्लेटफ़ॉर्म-browser.umd.js: 1 9 00 मूल अपवाद: TypeError: अपरिभाषित BrowserDomAdapter.logError @ platform-browser.umd.js की संपत्ति 'मान्य' नहीं पढ़ सकता: 1 9 00 प्लेटफ़ॉर्म -browser.umd.js: 1 9 00 मूल स्टैकट्रैक: BrowserDomAdapter.logError @ platform-browser.umd.js: 1 9 00 प्लेटफ़ॉर्म-browser.umd.js: 1 9 00 टाइपरर: डीबगैप व्यू._View_AppCompo –

+0

पर अपरिभाषित की संपत्ति 'मान्य' नहीं पढ़ सकता '# name =" id "' होना चाहिए 'name = "id" ' –

1

FORM_DIRECTIVES और CORE_DIRECTIVES आयात न करें, क्योंकि वे पदावनत कर रहे हैं, बजाय सुनिश्चित करें कि आप NgForm आयात करते हैं।

import {FormGroup, FormBuilder, FormControl, Validators, NgForm } from '@angular/forms'; 
संबंधित मुद्दे