Angular:错误:[$ parse:syntax]语法错误

时间:2015-08-28 14:58:20

标签: javascript angularjs angularjs-ng-repeat

我想在JNIEXPORT void JNICALL Java_your_package_your_activity_bmpToJNI( JNIEnv* env,jobject thiz, jbyteArrayarray) {...} 中使用angular-tooltips创建工具提示。工具提示的内容必须是动态的。我已经拥有的是这样的:

查看:

ng-repeat

控制器:

<div ng-repeat="region in regions">
    <a tooltips tooltip-html="{{ myCtrl.generateTooltip(region) }}">HOVER</a>
</div>

工具提示已显示并正常工作,但我在控制台中收到以下错误(我不想看到:-))

function generateTooltip(region) {
    // generate some html here
    var content = "<b>HELLO WORLD!</b>";
    return $sce.trustAsHtml( content );
}
  1. 我的代码出了什么问题?
  2. 是否可以使用视图作为工具提示而不是在控制器中生成HTML?有一个属性 Error: [$parse:syntax] Syntax Error: Token '<' not a primary expression at column 1 of the expression [<b>HELLO WORLD!</b>] starting at [<b>HELLO WORLD!</b>]. ,但我不知道如何将tooltip-view变量传递给它。

2 个答案:

答案 0 :(得分:0)

其他人在使用angular编译模板后运行的函数产生了类似的错误。也许是this will set you in the right direction

答案 1 :(得分:0)

您需要包含angular-sanitize.js,它通过将HTML解析为令牌来清理输入。然后将所有安全令牌(来自白名单)序列化为正确转义的HTML字符串。这意味着没有不安全的输入可以使它成为返回的字符串。