3

AngularJSAngular-UIを使用してChromeアプリで次の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のヒントに感謝します。別のバージョンのselect2.jsをgitub([リンク] https://raw.github.com/timoxley/select2/bug/onclick/select2.js)からダウンロードしましたが、この問題は修正されています。

4

2 に答える 2

0

select2.js を見ると、2 つの「onclick」イベントがインラインで設定されています。これは既知のバグです。削除してみてください。select.js の 1524 行目と 2232 行目。

于 2013-01-29T14:48:04.730 に答える
0

要素にディレクティブ ng-csp を追加します。

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

このディレクティブを使用すると、AngularJS は eval や new Function などの CSP で禁止されている動的 JS コードを使用しなくなります。

于 2013-01-29T14:33:08.560 に答える