数据绑定与Nativescript

时间:2017-04-22 15:43:42

标签: angular data-binding nativescript angular2-forms

我正在使用Nativescript启动一个项目,我正在尝试创建一个用于创建用户的页面。这是我的 create.user.component.ts

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

import { RouterExtensions } from 'nativescript-angular/router';

import firebase = require('nativescript-plugin-firebase');

@Component({
    selector:'create-user',
    template:`
                <StackLayout>
                    <Label class="titulo" text="Create User"></Label>
                    <TextField hint="Email" keyboardType="text" [(ngModel)]="email"
                        autocorrect="false" autocapitalizationType="none"></TextField>
                    <TextField hint="Password" secure="true" [(ngModel)]="password"
                        autocorrect="false" autocapitalizationType="none"></TextField>
                    <Button class="submit-botton" (tap)="create()" text="Crear usuario"></Button>
                </StackLayout>
        `,
    styleUrls:['login/login.component.css']
})
export class CreateUserComponent{

    email:string;
    password:string;

    constructor(private routerExt: RouterExtensions ){}

        create(){
            firebase.createUser({
                email:this.email,
                password: this.password

            }).then(
                (result)=>{

                    this.routerExt.navigate(["/chatListado"],{
                        transition:{
                            name: "flip",
                            duration:500,
                            curve:"linear"
                        }
                    });
                    console.log("User Created");
                },
                (errorMessage)=>{
                    alert('error: ' + errorMessage);
                }
            );

        }
}

当我点击按钮创建它时,它返回undefined。我无法收到电子邮件和密码,搜索后我发现我需要在app.module.ts中导入NativeScriptFormsModule,所以我做了。

app.module.ts

import { NgModule, NO_ERRORS_SCHEMA } from "@angular/core";
import { NativeScriptModule } from "nativescript-angular/nativescript.module";

//use the data binding
import { NativeScriptFormsModule} from "nativescript-angular/forms"

import { AppRoutingModule } from "./app.routing";
import { AppComponent } from "./app.component";

//login
import { LoginComponent } from "./login/login.component";
import { Login} from './login/login';
import { CreateUserComponent } from './login/create.user.component';

@NgModule({
    bootstrap: [
        AppComponent
    ],
    imports: [
        NativeScriptModule,
        AppRoutingModule,
        NativeScriptFormsModule
    ],
    declarations: [
        AppComponent,
        LoginComponent,
        CreateUserComponent

    ],
    providers: [
    ],
    schemas: [
        NO_ERRORS_SCHEMA
    ]
})
export class AppModule { }

理论上它应该可以工作但是现在当我启动应用程序时,我在控制台上出现了这个错误:

  

JS:错误错误:未捕获(在承诺中):错误:没有值访问器   带有未指定名称属性的表单控件JS:错误:没有值   具有未指定名称属性的表单控件的访问器JS:at   _throwError(file:///data/data/com.Mystory.android/files/app/tns_modules/@angular/forms/bundles/forms.umd.js:1838:11)   [angular] JS:在setUpControl   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/forms/bundles/forms.umd.js:1751:9)   [angular] JS:在NgModel._setUpStandalone   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/forms/bundles/forms.umd.js:4320:9)   [angular] JS:在NgModel._setUpControl   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/forms/bundles/forms.umd.js:4306:37)   [angular] JS:在NgModel.ngOnChanges   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/forms/bundles/forms.umd.js:4237:18)   [angular] JS:在checkAndUpdateDirectiveInline   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/core/bundles/core.umd.js:10715:19)   [angular] JS:在checkAndUpdateNodeInline   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/core/bundles/core.umd.js:12097:17)   [angular] JS:在checkAndUpdateNode   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/core/bundles/core.umd.js:12065:16)   [angular] JS:在debugCheckAndUpdateNode   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/core/bundles/core.umd.js:12694:59)   [angular] JS:在debugCheckDirectivesFn   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/core/bundles/core.umd.js:12635:13)   [angular] JS:at Object.eval [as updateDirectives]   (ng:///AppModule/LoginComponent.ngfactory.js:363:5)[angular] JS:
  at Object.debugUpdateDirectives [as updateDirectives]   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/core/bundles/core.umd.js:12620:21)   [angular] JS:在checkAndUpdateView   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/core/bundles/core.umd.js:12032:14)   [angular] JS:在callViewAction   (文件:///data/data/com.Mystory.android/files/app/tns_modules/@angular/core/bundles/core.umd.js:12347:17)   [角]

现在我无法进入页面创建用户......

有人知道这里发生了什么吗?如果我遗失某些东西或类似的东西?

谢谢,抱歉我的英语不好!

0 个答案:

没有答案