Angular ngHint - 表达式不支持连字符



我在3.15-3.16上注意到了这一点,突然我开始在带有连字符(减号)的表达式中出现错误

来源:<div ng-click="Landing.goSlide(-1,4)"></div>

错误:Error: [$parse:ueoe] Unexpected end of expression: Landing.goSlide( {link…} at REGEX_STRING_REGEXP

当我从1之前删除-时,它又起作用了,但我不明白为什么它一开始就坏了。

更新:

找到了罪魁祸首ngHint我不知道为什么angular是用ngHint编译的,我也找不到如何删除ngHint。有线索吗?

事实证明,如果您启用了AngularJS Batarang扩展,它在默认情况下会启用ng提示,并且它会阻塞任何包含连字符的表达式(以及在正则表达式中拆分的任何其他表达式)

如果有人好奇的话,这就是它断裂的地方。

var getFunctionNames = function(str) {
    if (typeof str !== 'string') {
        return [];
    }
    var results = str.replace(/s+/g, '').split(/[+-/|<>^=&!%~;]/g).map(function(x) {
        if (isNaN(+x)) {
            if (x.match(/w+(.*)$/)){
                return x.substr(0, x.indexOf('('));
            }
            return x;
        }
    }).filter(function(x){
        return x;
    });
    return results;
};

最新更新