2016-11-14 8 views
2

ユースケースの後に動的に追加HTMLでコンポーネントをレンダリングしますは、Ajaxリクエスト

私はいくつかのAjaxリクエストの後にdinamically HTMLを追加jQueryのライブラリの依存関係を持っています。私は追加されたHTMLの内部にVueコンポーネントを表示したいと思います。 HTMLのコンテンツを提供することはできますが、JQueryを使用してDOMに追加する方法を変更することはできません。

Ajaxリクエストが終了し、HTMLがDOMに追加されたときに、コンポーネントをレンダリングする以外に選択肢はありません。

これを行うにはどうすればよいでしょうか?

答えて

2

"ベスト"アプローチは非常に主観的です。

import component from 'Component.vue' 
new Vue({ 
    el: '#targetId', 
    render: h => h(component) 
}) 

これを使用すると、単一のファイルのコンポーネントを使用していることを前提としています。あなたは要素のIDを知っていれば

しかし、あなたは確か要素に部品を取り付けることができます。 documentation

new Vue({ 
    el: '#targetId', 
    // options 
}) 
+0

"パフォーマンスの後退"があるかどうか知っていますか?私は行の間にテーブルの詳細を追加できる外部グリッドコンポーネントを使用しています。ユーザーがクリックスルーして100行と言うと、そのアプローチは問題になりますか? – Patrick

+1

言うのは難しいですが、おそらく最適ではありません。私があなたを正しく理解していれば、本質的に100のVueコンポーネントを作成するでしょうか?オーバーヘッドになることは間違いありませんが、パフォーマンスをテストする必要があります。 –