web-dev-qa-db-ja.com

Angular-animate-不明なプロバイダー:$$ asyncCallbackProvider <-$$ asyncCallback <-$ animate <-$ compile

奇妙な問題があります。 AngularJSプロジェクトに角型アニメーションを含めたい-私はAngularJS v1.2.6を使用しています。私が追加しました angular-animate私のバウアーファイル。ソースのHTMLファイルをダウンロードして追加し、正しいファイルを指し示しています(ブラウザーにロードします)。これを依存関係として追加する必要があるので、アプリにモジュールを追加します...

angular.module('myApp', [
        'ngResource',
        'ngSanitize',
        'ngRoute',
        'ui.bootstrap',
        'LocalStorageModule',
        'cookiesModule',
        'ngAnimate'
    ])  

しかし、Gruntがファイルの変更とビルドを検出するとすぐに、次のエラーが表示されます。

Unknown provider: $$asyncCallbackProvider <- $$asyncCallback <- $animate <- $compile

スペルを確認し、 https://github.com/angular/bower-angular-animate に記載されている指示に従いましたが、これが機能しない理由がわかりません。エラーが発生する理由依存関係配列内の依存関係の位置を変更しましたが、これは何もしません。他の誰かがこれを経験しましたか?私はこれを調査し続けますが、誰かがこれが起こっている理由を克服または決定した場合、声を上げてください!前もって感謝します

57
Mike Sav

ふう!私はこれを修正したと思います... Bowerが問題と解決策のようです!

BowerファイルでAngularJS 1.2.6から1.2.15に変更すると、問題が解決しました。

だから私はこれを変更しました:

  "angular": "1.2.6"

これに

  "angular": "1.2.15"

まあ、それは私に2時間しかかかりません!

73
Mike Sav

ここでの問題は、Angularバージョンが角度アニメーションバージョンと一致しないことです。これらを揃えておくようにしてください。したがって、angular 1.2.6 、角度アニメーション1.2.6も使用します。

また、bower.jsonに変更を加えた後、bowerコンポーネントをクリーニングする必要があります(bowerフォルダーを削除します)。bowerは、インストールされているバージョンがbower.jsonと同じかどうかを確認しません。

一般的に、可能な限り最高の安定版angularおよびng-animateバージョンを使用することをお勧めします。

56
Paul Weber

この問題は、おそらく互換性の問題が原因です。 bower.jsonのangularバージョンを変更すると問題は解決しますが、この問題を解決する最善の方法はangular and angle -アニメーションすなわち〜1.4.0

そして、最良の部分はasyncCallbackが最新バージョンで使用されていないことです。したがって、このようなエラーは発生しません。 :p

1
Sandeep Gantait

私は同じ問題に直面しました。 angular animate 1.3.4 with angular 1.4.8。ダウングレード後、angular version to 1.3.4 、エラーがなくなりました。

1
Madura Pradeep

bower.jsonファイルで

検索して"angular": "1.5.8"に変更し、タイプコマンドbower updateよりも

0
gijonc