如何将Mongoose后端类连接到前端类(Ionic with Angular.io)

时间:2017-12-18 16:54:23

标签: node.js angular typescript ionic-framework mongoose

我现在已经尝试了太多时间,而我根本无法让它发挥作用。我正在创建一个登录页面,您基本上只需插入用户名,然后从数据库中获取信息并更新前端上的对象(唯一的区别是已添加ObjectID)。这就是我想要的:

  1. 加载登录页面,提示您输入用户名。
  2. 您输入用户名。这里可能发生多件事:
    1. 使用新用户名在数据库中创建一个新条目,并返回新用户:ObjectIDUsername
    2. 它返回数据库中的条目(来自find()
  3. 这没什么了不起的,但我根本无法解决错误:

      

    TypeError:无法读取属性'用户名'为null

    的login.html

    <ion-content>
        <ion-input placeholder="Username" [(ngModel)]="user.username"></ion-input>
        <button ion-button (click)="submit()">Submit</button>
    </ion-content>
    

    login.ts

    export class LoginPage {
      appStorage: Storage;
      user = {
        id: "test",
        username: "test"
      };
      //user: User;
      //user: Object = {};
    
      constructor(private storage: Storage) {
        this.appStorage = storage;
    
        storage.get('user').then(user => {
          this.user = user;
        });
      }
    
      submit() {
        this.appStorage.set("user", this.user);
      }
    
      ngOnInit() {
        this.user = {
          id: "test",
          name: "test"
        };
      }
    }
    

    User.ts

    export class User {
        public id: string;
        public username: string;
    
        constructor(public inputId?: string, public inputUsername?: string) {
            this.id = inputId;
            this.username = inputUsername;
        }
    }
    

    我尝试改变我的用户类,我已经尝试将所有内容都移到一个组件中,我尝试过各种各样的事情,但我根本无法让它发挥作用。我希望我的后端Mongoose类与前端相匹配。是不是有一个图书馆可以为我做这个?否则我会单独制作它们。

    我真的想使用我拥有的User类,所以我没有使用对象。

1 个答案:

答案 0 :(得分:0)

我不认为你应该这样做。您应该使用API​​与后端通信;如果需要,您可以重复使用您的POJO接口;但不能从前端代码访问mongoosejs存储空间。