TypesScript:即使它在那里也无法读取对象的属性

时间:2017-04-07 20:55:30

标签: javascript json node.js typescript console.log

我正在尝试创建一个正文并将我的网址发送到它存储content个对象的后端。但是,当我使用const body = JSON.stringify(content);时,它不会读取属性file

以下是我的服务代码:

addMessage(content: Content) {
    console.log("Service:", content); // File property is in the content object I sent
    const body = JSON.stringify(content); // File property missing here
    console.log("Body:", body);
    const headers = new Headers({'Content-Type': 'application/json'});
    const token = localStorage.getItem('token')
        ? '?token=' + localStorage.getItem('token')
        : '';
    return this.http.post('http://localhost:3000/content' + token, body, {headers: headers})
        .map((response: Response) => {
            const result = response.json();
            const newContent = new Content(
                result.obj.name,
                result.obj.user.firstName,
                result.obj._id,
                result.obj.user._id,
            );
            this.contents.push(newContent);
            return newContent;
        })
        .catch((error: Response) => {
            this.errorService.handleError(error.json());
            return Observable.throw(error.json());
        });
}

这是我的控制台:

enter image description here

您可以看到该文件在内容中但未显示在正文中。我尝试了JSON.parse(JSON.stringify(content));,令我惊讶的是,content.file未定义。知道什么可能出错吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

您是否尝试过JSON.stringify(JSON.parse(content));

首先,您需要parse JSON,然后解析一下stringify

让我知道它是否对你有所帮助! :d