2017-12-30 112 views
1

私はPopper.Jsの機能を必要とするトレーニングプロジェクトを開始しようとしています。しかし、Popper.Jsを使い始めることはできません。Angular 5 + Popper.JS

ブートストラップのドキュメントによると、私はngOnInitの主要コンポーネントでそれを使用

$(function() { 
    $('[data-toggle="tooltip"]').tooltip(); 
}); 

でPopper.Jsを開始します。ただし、動作しません。エラーが発生しました。 "プロパティ 'tooltip'がタイプ 'JQuery'"に存在しません。 jqueryとbootstrapバンドルファイルをインポートしました。すべてのライブラリのタイプがインストールされています。

また、bootstrap.bundle.jsの代わりに純粋な "popper.js"を試しました。しかし、同じエラーが発生します。 Bootstrap.bundle.js(ブートストラップとpopper.jsが正しい順序で含まれています)とjqueryはangular-cli.jsonにインポートされます。

答えて

3

ブートストラップjqueryの& popper.jsインストールするには、次のコマンドを実行します。あなたのpage.tsで

"styles": [ 
    "styles.css", 
    "../node_modules/bootstrap/dist/css/bootstrap.min.css" 
    ], 
    "scripts": [ 
    "../node_modules/jquery/dist/jquery.min.js", 
    "../node_modules/popper.js/dist/popper.min.js", 
    "../node_modules/bootstrap/dist/js/bootstrap.min.js" 
    ], 

を追加します:

これらの行を追加し、角-cli.jsonで

npm install [email protected] popper.js jquery --save 

declare var $; 

編集:

すべてのJavaScriptライブラリ/フレームワークにTypeScript宣言ファイルがあるわけではありません。一方、コンパイルエラーを起こすことなく、TypeScriptファイルでライブラリ/フレームワークを使用することができます。 解決策の1つは、declareキーワードを使用することです。 declareキーワードは、TypeScriptファイルから生成されていない可能性のある変数を定義するアンビエント宣言に使用されます。

+1

ありがとうございました!この「宣言」を私に説明できますか?私はjqueryをインポートしようとしましたが、今は単純な宣言で動作します。 – Sergey

+1

編集であなたの質問に答えました – Melchia

関連する問題