2017-10-25 13 views
1

外部のjsファイルをIonic 3に追加する際に問題があります。hamburg.jsファイルをsrc/js/hamburg.jsに作成し、インデックスにスクリプトファイルを呼び出しました。 htmlのapp/index.htmlそして、testpage.hmtlにhtmlコードを追加し、testpage.scssにCSSを追加しました。 app.component.tsでも宣言されています。ここに私のコードです外部のJSファイルをIonic 3でインポートするにはどうすればいいですか

app.component.ts 宣言var wrapperMenu;

hamburg.js

var wrapperMenu = document.querySelector('.wrapper-menu'); 

wrapperMenu.addEventListener('click', function(){ 


wrapperMenu.classList.toggle('open'); 
}) 

index.htmlを

<script src="assets/js/hamburg.js"></script> 

TestPage.htmlを

は、誰かが私にしてください導くことはできますか?

+0

JSライブラリのURLを共有できますか? – Sampath

+0

こんにちはSampath、ここに私はIonic 3に同じものを統合したいリンクがありますhttps://codepen.io/JoseRosario/pen/BWqMwK –

答えて

0

外部のjsファイルは必要ありませんが、このプラグインは主にCSSで再生されます。

このスニペット

var wrapperMenu = document.querySelector('.wrapper-menu'); 
wrapperMenu.addEventListener('click', function(){ 
wrapperMenu.classList.toggle('open'); 
}) 

はapp.component.tsファイルにパットすることができます。またはヘッダのための別のコンポーネントを持っている場合は、具体的にはngOnInit()フックにそのTSファイルにコードを入れる方が良いでしょう。

編集コンポーネントlife-cycleで最高のフックがngAfterViewInit()フックにこのコードを置くことです。

編集2:もう一つの良い方法は、メニューが開かれ、あなたが私のフォークの例をご確認くださいmenu-content-open

.openからあなたのCSSコードでセレクタを変更することができたときに自動的に追加された定義済みのクラスmenu-content-openを使用することです元のものからhere
イオンアプリにコードを追加すると、コードは完全に機能します。

+0

こんにちはPeter、app.module.tsに同じものを追加したときにスローされましたこのTypeError例外のようなエラー:プロパティを読み取ることができませんヌル   /build/main.js:1505:13 Object.243()   /build/vendor.js:55:30 __webpack_require __()   /ビルドの 'addEventListenerを' /main.js:1309:70 Object.224()   /build/vendor.js:55:30 __webpack_require __()   /build/vendor.js:26:23 webpackJsonpCallback()   /ビルド/メイン。 js:1:1 –

+0

app.component.tsを意味して申し訳ありません。私の回答を編集しました。ここではfi ngOnInitと呼ばれるフックを使用してコードを入れてください –

+0

Peterさん、まだ同じエラーが表示されています。 –

関連する問題