【问题标题】:Angular UI Select2 dumping error in console while using in chrome App在 chrome App 中使用时控制台中的 Angular UI Select2 转储错误
【发布时间】:2013-01-29 13:40:57
【问题描述】:

我正在尝试使用 AngularJSAngular-UIchrome App 中使用以下 select2 示例。它工作正常,但不幸的是,每次单击下拉框时,我都会在 chrome 控制台中收到以下错误。

"拒绝执行内联事件处理程序,因为它违反了以下内容安全策略指令:"default-src 'self' chrome-extension-resource:"。请注意,'script-src' 没有明确设置,所以 'default -src' 用作后备。"

有什么建议可以解决这个问题吗?

谢谢

*此代码在浏览器中运行正常,但在 chrome 应用中没有问题
代码:

控制器

 var app = angular.module("app", ['ui']);

function Ctrl($scope) {


    $scope.contacts = [
        {
        "id": 1,
        "name": "Lucky"},
       {
        "id": 2,
        "name": "Lance"},
    {
        "id": 3,
        "name": "Troels"},
    {
        "id": 4,
        "name": "Phe"}
    ];

}

查看

<select class="input-medium" ui-select2 ng-model="form.cont" type="text" value="" >
    <option ng-repeat="contac in all" value="{{contac.id}}">{{contac.name}}</option>               
</select>


已解决!
感谢@AlanRodriguesSoares 的提示。我已经从 gitub ( [link] https://raw.github.com/timoxley/select2/bug/onclick/select2.js ) 下载了另一个版本的 select2.js,这个问题在其中得到了解决。

【问题讨论】:

  • 此时 select.js 已经相当老了。这是否曾经公关回项目?我在 0.19.6 版本中看到了这一点。

标签: angularjs angular-ui jquery-select2 google-chrome-app


【解决方案1】:

将指令 ng-csp 添加到您的元素:

<html ng-app ng-csp>
...

有了这个指令,AngularJS 不会使用任何 CSP 禁止的动态 JS 代码,比如 eval 和 new Function。

【讨论】:

  • 感谢您的回复,但我的 HTML 标记中已包含“ng-csp”。
【解决方案2】:

如果您查看 select2.js,内联设置了两个“onclick”事件,这是一个已知错误,请尝试删除它。 select.js 第 1524 和 2232 行。

【讨论】:

  • 感谢您的回复。您是在谈论 'addSelectedChoice''createContainer' 方法吗?实际上我从这两行中删除了 'onClick' 。我以前每次点击都会出现两个错误,现在每次点击都会出现一个错误!所以你帮我解决了 50% 的问题;)你还有什么建议吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-25
  • 2016-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-25
相关资源
最近更新 更多