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

时间:2015-06-22 13:13:42

标签: javascript angularjs expression angularjs-ng-hint

我在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我不确定为什么使用ngHint编译角度,我无法找到如何删除ngHint。有线索吗?

1 个答案:

答案 0 :(得分:0)

如果你启用了AngularJS Batarang扩展,那么它默认启用了ng-hint,它会阻塞任何包含连字符的表达式(以及在正则表达式中分割的任何其他表达式)

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

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;
};