2016-03-26 8 views
1

Angularコンポーネントのコードが実行されているかどうかを確認したいだけです。それはその時点でDOMが準備ができていることを意味します。 例::活字体Angular 2コンポーネントの関数内で `document.ready()`にjQueryコードをラップすることは意味があります

export class SomeComponent{ 
    constructor(){ 
    $('body').do(); 
    } 
} 

OR

export class SomeComponent{ 
    constructor(){ 
    $(document).ready(function(){ 
     $('body').do(); 
    } 
    } 
} 
+3

参照してください。 –

+0

これはAngularjsまたはAngular2に関するものですか?タグを修正してください。 –

+1

@RubyRacerこれは完全に不正確な声明です。もちろん、準備が整った後でなければ、 – charlietfl

答えて

0

は、ルート・コンポーネントAppComponentngAfterViewInit()にあなたのコードを追加します。このライフサイクルのメソッドが呼び出されると、DOMの準備が整ったことを確認できます。 document.readyイベントは、このライフサイクルメソッドが呼び出される前に送信されます。

は、それはあなたのangular2アプリ内のjQueryを使用するために、任意の意味をなさないもhttps://angular.io/docs/js/latest/api/core/AfterViewInit-interface.html

+0

人々はAngularでjQueryを使うのは良い考えではないと思うので、この質問に答えてはいけませんか?あなたがダウンボトムすれば、あなたは確かによく知っている。どのように良い答えを追加するのですか? –

+1

質問は答えに値しないので、私はこれを打ち消しませんでしたが、この回答は正しく質問に答えなかったので、質問しました。 (特定のコンポーネントのView initはDOMの準備とは関係ありません) –

+0

@DanielBeckはフィードバックに感謝しています!あなたは正しいですが、答えはDOMの準備ができていないのですが、DOMの準備ができたらコードを実行したいという質問に記載されているように、ライフサイクルコールバックの使用は十分に近いと思います。私は質問を更新しますが、これはルートコンポーネントでのみ意味があるためです。 –

関連する問題