angular почтовый метод не работает должным образом - PullRequest
1 голос
/ 05 марта 2020

В этом методе POST я отправляю данные, когда я делаю console.log( 'value:- '+ this.newCourses); здесь объект объекта приходит, здесь значения, которые я отправил, не печатают

{  new course data saved succcesfully , 
   this.token ... [object Object] ,
   value:- [object Object]     } 



postData(){
         this.token = getToken();

        this.details['title'] = this.form.getRawValue();
        this.details['category'] = this.form.getRawValue();
        this.details['length'] = this.form.getRawValue();
        this.details['content'] = this.form.getRawValue();
        this.details['product_name'] =  getProduct()['name'];
        this.details['updated'] = 'Monday';
         console.log(this.details);

          this.httpHeaders = new HttpHeaders({
          "Authorization": "Bearer " + this.token});
          this._httpClient.post('http://127.0.0.1:8000/api/products/add-course/',this.details, {headers: this.httpHeaders}).subscribe(
                                result => {
                              console.log(result); 
                                   console.log("new course data saved succcesfully");                       
                                   this.token = getToken();
                                   this.newCourses = result;
                                   console.log( 'value:- '+ this.newCourses);

                                },
                               error => {
                               console.log(error);
                                }
                            );

     }

1 Ответ

3 голосов
/ 05 марта 2020

Вы просто видите результат объединения объекта в строку.

Если вы хотите зарегистрировать сам объект, зарегистрируйте строку и объект отдельно:

console.log('value:- ', this.newCourses);

Примечание Я передаю 2 аргумента в console.log здесь.

Когда вы объединяете объект и строку, будет вызываться метод объекта toString(). По умолчанию будет отображаться [object Object].

const obj = { a: 1, b: 2, c: 3 };
   
// concatenate obj with string
console.log('value: - ' + obj);
   
// log string and object itself as separate args
console.log('value: - ', obj);

// log obj.toString()
const objString = obj.toString();
console.log(objString);

Бонусное редактирование:

Вы можете изменить toString(), если хотите:

// override toString()
const obj = { a: 1, b: 2, c: 3, toString: () => 'World!' };
console.log('Hello, ' + obj);
...