問題タブ [html-imports]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - HTML インポート内の JS スクリプトからイベント リスナーが起動しない
次の関数でインポートform.html
しindex.html
ています:
これは新しいlink rel="import"
タグを作成し、head
ofに追加しindex.html
ます。リンクの読み込みが完了すると、コンテンツform.html
が本体コンテナーに追加されます。
内部form.html
には、ページネーション要素へのハンドルを取得してイベント ハンドラーをアタッチするスクリプトがあります。
私が抱えている問題は、コンソールにエラーが表示されていないにもかかわらず、イベント リスナーが起動しないことです。
これは読み込み順序と関係があるのではないかと考え、これを少し試して、スクリプトが解析される前にインポートが読み込まれるようにしましたが、これが期待どおりに機能しているかどうかについては 100% ではありません。
関数の後に動的にロードすることにより、演技スクリプトをメインドキュメントに移動することが機能することがわかりましたimportContent()
が、フォームの関連スクリプトをインポート内にカプセル化したままにしたいと思います。
考え?
javascript - Html-Imports なしで Html-Templates をパッケージ化またはインポートする方法
Html-Imports は Chrome ( https://www.chromestatus.com/feature/5144752345317376 ) で非推奨になり、削除されるため、代替手段は何だろうか。
現在、Html-Imports を使用して Html-Templates をインポートしています。これまでのところ、2 つの選択肢しかありません。
- すべての HTML ファイルを 1 つのファイルにまとめる。これにより、本番環境でのダウンロード時間も短縮されますが、カプセル化とモジュール化が減少します。分離された HTML ファイル内の HTML インポート ステートメントをトラバースすることによってジョブを実行するポリマー バンドラーがあります。ただし、これは、将来的にブラウザーでサポートされなくなったとしても、HTML インポートがコードに残ることを意味します。
- XHttpRequests を使用してある種のモジュール ローダーを構築し、実行時にテンプレートを 1 つの HTML ファイルに編成します。これにより、カプセル化とモジュール化が維持されますが、基本的に自分で import-Statements を再構築するので、これは私には悪臭を放ちます。
Html テンプレートをインポートする新しいバニラの方法はありますか? (「バニラ」とは、基本的に、プリコンパイラやバンドラーなどの追加ツールを使用しない方法を意味します)