vue.js2にDocument.getElementByIdをバインドする方法を教えてください。私は、javaScriptファクトリ関数で埋め込みツイートを使用しています。私は.htmlファイルでDOMを取ってvueファイルでツイートを生成しますが、両方が.vueファイルであれば動作しません。私は自分の.vueファイルでDOMを使用し、それをファクトリ関数にバインドする必要があります。vue.js2でDOMをバインドして、javaScriptファクトリ関数でtweetを生成するには?
私はrefとv-elで試しましたが、うまくいきませんでした。
<template>
<div class="row" id="home">
<h3 v-if="msg"><span class="label label-warning">{{msg}}</span></h3>
</div>
<!--<div v-for="tweet in tweetHtml">
<div v-html="tweet"></div>
</div>-->
</div>
<div id="container" ></div> <!-- generated tweet from fun should bind here -->
</template>
<script>
import appService from '../service'
import bus from '../service/bus'
export default {
data() {
return {
searchedTopic: '',
user_id: '',
tweets: {},
tweetHtml: []
}
},
created() {
// generate tweet with javaScript factory fun <<---=-=-=-=
twttr.widgets.createTweet('20',
document.getElementById('container'), // <<-- what to do to bind container with vue file's div.
{
theme: 'light'
})
.then(function(el) {
console.log('Tweet added.');
});
},
methods: {
}
}
</script>
あなたは何をしようとしているのか分かりませんが、 '
'のような '$ refs'を使って、' this。$ refs.container'のようにアクセスできます - 'this'をtwttrオブジェクトに注目してくださいVueインスタンスには参照されませんので、 'var self = this'の前に宣言し、' self。$ refs.container'を使用してください。 –@BelminBedak私はトライを持っていますが、IDは働いていませんでした。私はそれを言いました。 あなたのコメントの後、もう一度試してみました。 –