2017-11-25 148 views
0

Angular 5 Frameworkの初心者です。私はプロジェクトを作成してそれに取り組んでいますが、私はbxSliderの問題に直面しています。 myangularプロジェクトにbxSliderプラグインを追加しました。それが最初に読み込まれるとき、それは大丈夫と思われる。しかし、他のページのリンクをクリックしてインデックスページに戻ると、bxSliderプラグインは機能しません。jQuery bxSliderプラグインがAngular 4で動作しない

1)ここにcutsom.jsファイルがあります。

$(document).ready(function($) { 

$('.homeSlider').bxSlider({ 
    speed: 1500, 
    pause: 5000, 
    mode: 'fade', 
    captions: true, 
    auto: false, 
    infiniteLoop: true, 
    stopAuto: false, 
    pager: false, 
    nextSelector: '#slider-next', 
    prevSelector: '#slider-prev', 
}); 

});

2)は、私は私のコンポーネントファイルの両方のjQueryと$オブジェクトを宣言していたファイル

declare var jquer:any; 
declare var $:any; 

をapp.component.ts。

サイトがロードされると、このようになります。 enter image description here

ページを変更してインデックスページに戻った後、スライダの故障が全体的に発生します。

enter image description here

+0

これは 'declare var jquery:any;'であるべきですか? jquery用のapp.componentにタイプ定義参照を追加しましたか? – Niladri

+0

ここに私のapp.component.tsファイルコードhttp://prntscr.com/hf0ky6があります。私は "let"を "var"に置き換えました。しかし、まだそれは動作していません。スライダは最初は完全に機能しますが、リンクを変更してインデックスページに戻っても機能しません。 –

+0

外部サイトではなくコードを投稿することができます – Niladri

答えて

2

移動コンポーネントファイル内のngOnInit() {}ライフ・サイクル・メソッドへcustom.jsからのコード。コンポーネントが読み込まれるたびにスライダが初期化されます。文書準備機能を書く必要はありません。

+0

「{AngInit} from '@ angular/core'」からインポートします。 クラスAppComponentはのOnInit { ngOnInit(){ $( 'homeSlider')を実装bxSlider({ スピード:1500、 一時停止:5000、 モード: 'フェード'、 キャプション:真、 オート:偽、 infiniteLoop:真、 stopAuto:偽、 ページャ:偽、 nextSelector: '#スライダ-NEXT'、 prevSelector: '#スライダ-PREV'、 })。 } –

+1

ありがとうございました。心から感謝する。 –

+0

* ngForで内部で動作しますか? –

関連する問題