alert():无法调用其类型缺少调用签名的表达式

时间:2016-11-04 01:11:31

标签: typescript auth0

前言:我看过类似这个错误的问题,但没有找到任何有用的东西。

这段代码究竟出了什么问题?我在阅读error => alert(error.json().message)的行中收到错误:

    this.authHttp
        .patch('https://' + myConfig.domain + '/api/v2/users/' + this.auth.userProfile.user_id, data, {headers: headers})
        .map(response => response.json())
        .subscribe(
            response => {
                this.auth.userProfile = response;
                localStorage.setItem('profile', JSON.stringify(response));
            },
            error => alert(error.json().message)
        );

继承我用于第一个的数据和标题对象:

    var alert = new Alert;
    alert.name = this.name;
    // etc....

    var headers: any = {
        'Accept': 'application/json',
        'Content-Type': 'application/json'
    };

    var data: any = JSON.stringify({
        user_metadata: {
            alerts: [alert]
        }
    });

1 个答案:

答案 0 :(得分:1)

为了更好的可见性,包括来自用户 Nitzan Tomer 的提示作为社区维基回答。

根本原因是添加了更改alert的签名的其他代码。

在这种特殊情况下,添加名为alert的变量会在以后尝试将alert作为函数调用时抛出错误。