كيفية تعبئة نموذج فئة TypeScript في Angular


أنشأت نموذج فئة ولا أعرف كيفية ملء الفئة بالقيم.

مستخدم.ts

export class User {
    constructor(
        username: string,
        password: string,
        token: string
    ) { }
}

app.component.ts

  ngOnInit() {

    let user = new User('uname' , 'pword', 'sampletoken');
    console.log(user);
  }

عندما أشغل هذا، يظل المستخدم فارغًا.

الإجابة رقم 1

أضف محددات الوصول إلى وسائط الباني لجعلها كخاصية للفئة. وإلا فسيتم اعتبارها خصائص ضمن نطاق طريقة الباني فقط.

مستخدم.ts

export class User {
    constructor(
        public username: string,
        public password: string,
        public token: string
    ) { }
}

الإجابة رقم 2

الطريقة البديلة هي أنه يمكنك أيضاً القيام بذلك بهذه الطريقة :-

export class AppComponent  {
  name = 'Angular 6';

  constructor(){
     let user = new User({username: 'abc', password: '1234', token: 1});
     console.log(user);

  }
}


    class User {
        public username?: string;
        public password?: string;
        public token?: number;

        constructor(values: User) {
          Object.assign(this, values);
        }
    }

إليك الرابط يمكنك التحقق منه في وحدة التحكم.. عرض تجريبي على CodeSandbox