When i used beta 10 my code works perfect but after update to beta 11 i got problems in ngModel.
i got below error
browser_adapter.js:84 Error: No value accessor for ''
at new BaseException (exceptions.js:27)
at _throwError (shared.js:55)
at Object.setUpControl (shared.js:30)
at NgModel.ngOnChanges (ng_model.js:41)
at AppView._View_LoginPage0.detectChangesInternal (LoginPage.template.js:402)
at AppView.detectChanges (view.js:243)
at AppView.detectViewChildrenChanges (view.js:269)
at AppView.detectChangesInternal (view.js:254)
at AppView.detectChanges (view.js:243)
at AppView.detectContentChildrenChanges (view.js:261)
code that i used
home.html
<ion-content padding class="login">
<ion-row class="login-logo">
<ion-col><img src="img/icon.png" /></ion-col>
</ion-row>
<ion-row class="login-form">
<ion-col>
<ion-list inset>
<ion-item>
<ion-label><ion-icon name="person"></ion-icon></ion-label>
<ion-input [(ngModel)]="userValue" placeholder="username" type="text" spellcheck="false" autocapitalize="off" required></ion-input>
<!-- <ion-input [(ngModel)]="login.username" name="username" type="text" #username="ngModel" spellcheck="false" autocapitalize="off" required></ion-input> -->
</ion-item>
<ion-item>
<ion-label><ion-icon name="lock"></ion-icon></ion-label>
<ion-input placeholder="password" [(ngModel)]="pwdValue" type="password" spellcheck="false" autocapitalize="off" required></ion-input>
<!-- <ion-input [(ngModel)]="login.password" name="password" type="password" #password="ngModel" required></ion-input>-->
</ion-item>
</ion-list>
<button (click)="onSubmit()" primary class="login-button">Login</button>
</ion-col>
</ion-row>
<ion-row>
<ion-col>
<button (click)="forgotPwd()" class="create-account">Forgot Password</button>
</ion-col>
</ion-row>
</ion-content>
home.ts
constructor(private platform: Platform,public navController: NavController,public service: WebService, private menu: MenuController,private alertCtrl: AlertController,private loading: LoadingController) {
this.menu.enable(false);
//console.log('device test',Device);
this.db = new DatabaseHelper();
this.db.getData(this.db.sqtable_UserInfo).then(data => {
console.log('data',data.res.rows.item(0).UserId);
if(data.res.rows.length > 0)
{
ResponseString.setLoginPassword(data.res.rows.item(0).Password);
ResponseString.setLoginId(data.res.rows.item(0).UserId);
//ResponseString.setLoginPassword(data.res.rows[0].Password);
//ResponseString.setLoginId(data.res.rows[0].UserId);
this.isChecked = true;
this.userValue = ResponseString.getLoginId();
this.pwdValue = ResponseString.getLoginPassword();
//this.login.username = ResponseString.getLoginId();
//this.login.password = ResponseString.getLoginPassword();
} else{
this.isChecked = false;
}
},err => AllFunctions.doAlert(Constants.error + '- 101',this.alertCtrl));
}
confix.xml
<?xml version='1.0' encoding='utf-8'?>
<widget id="io.ionic.starter" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>NRA_Hybrid</name>
<description>An Ionic Framework and Cordova project.</description>
<author email="hi@ionicframework" href="http://ionicframework.com/">Ionic Framework Team</author>
<content src="index.html" />
<access origin="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<allow-navigation href="*" />
<allow-navigation href="http://*/*" />
<allow-navigation href="https://*/*" />
<allow-navigation href="data:*" />
<platform name="android">
<allow-intent href="market:*" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
<preference name="webviewbounce" value="false" />
<preference name="UIWebViewBounce" value="false" />
<preference name="DisallowOverscroll" value="true" />
<preference name="android-minSdkVersion" value="15" />
<preference name="BackupWebStorage" value="none" />
<preference name="SplashScreenDelay" value="1000" />
<preference name="FadeSplashScreenDuration" value="1000" />
<feature name="StatusBar">
<param name="ios-package" onload="true" value="CDVStatusBar" />
</feature>
<plugin name="cordova-plugin-console" spec="~1.0.3" />
<plugin name="cordova-sqlite-storage" spec="~1.4.5" />
<plugin name="cordova-plugin-network-information" spec="~1.2.1" />
<plugin name="cordova-plugin-x-toast" spec="~2.5.2" />
</widget>
package.json
{
"dependencies": {
"@angular/common": "2.0.0-rc.4",
"@angular/compiler": "2.0.0-rc.4",
"@angular/core": "2.0.0-rc.4",
"@angular/forms": "0.2.0",
"@angular/http": "2.0.0-rc.4",
"@angular/platform-browser": "2.0.0-rc.4",
"@angular/platform-browser-dynamic": "2.0.0-rc.4",
"angular2-moment": "^0.8.2",
"es6-shim": "^0.35.0",
"ionic-angular": "^2.0.0-beta.11",
"ionic-native": "1.2.4",
"ionicons": "3.0.0",
"moment": "^2.14.1",
"reflect-metadata": "^0.1.8",
"rxjs": "5.0.0-beta.6",
"socket.io": "^1.4.8",
"zone.js": "0.6.12"
},
"devDependencies": {
"del": "2.2.0",
"gulp": "3.9.1",
"gulp-watch": "4.3.5",
"http": "0.0.0",
"ionic-gulp-browserify-typescript": "2.0.0",
"ionic-gulp-fonts-copy": "^1.0.0",
"ionic-gulp-html-copy": "^1.0.0",
"ionic-gulp-sass-build": "^1.0.0",
"ionic-gulp-scripts-copy": "^2.0.0",
"run-sequence": "1.1.5"
}
}