错误:text.replace不是angularjs过滤器中的函数,如何解决此问题



在angular中,我试图使用angular中的filter将一些字符串替换为它可以找到的另一个单词,我已经尝试了很多例子,我认为我的代码只是缺少了一些东西,但我无法弄清楚。这是我的代码:

这是我的app.js

    app.filter('filterStatus', function () {
    return function (text) {
        if(text == 1){
            return str = text.replace(/1/g, "Waiting");
        } else if (text == 2) {
            return str = text.replace(/2/g, "On Process");
        } else if (text == 3) {
            return str = text.replace(/3/g, "On The Way");
        } else if (text == 4) {
            return str = text.replace(/4/g, "Delivered");
        } else if (text == 5) {
            return str = text.replace(/5/g, "Expired");
        }
    };
});

我要把"1"换成"等待",这是我的html页面

            <tr ng-repeat-start="siheaders in singleID.siheader">
                <td>{{siheaders.status | filterStatus}}</td>
            </tr>

但当我使用firebug调试它时,它给了我这些"错误:text.replace不是函数"的错误,我在这里错过了什么?

实际上没有必要进行任何字符串替换。

app.filter('filterStatus', function () {
    return function (text) {
        if(text == 1){
            return "Waiting";
        } else if (text == 2) {
            return "On Process";
        } else if (text == 3) {
            return "On The Way";
        } else if (text == 4) {
            return "Delivered";
        } else if (text == 5) {
            return "Expired";
        }
    };
}

最新更新