console.log(これ)doSomthingメソッドでは、 "null"と表示されます。Vue.js - componentsnetの "this"オブジェクトを取得するにはどうすればいいですか?
私は "メイン" 表示されますが、 "この" オブジェクトがnull ..です:(
currentPageにの "メイン" にアクセスする方法は?
<template>
<div class="tab_menu_wrap">
<ul class="tab_menu">
<li v-for="tab in tabMenus" v-bind:class="{ active: tab.isActive }" v-on:click="doSomthing">
{{ tab.text }}
</li>
</ul>
</div>
</template>
<script>
export default {
name: 'tab-menu',
props: {
},
data() {
return {
currentPage: "main",
isActive: true,
tabMenus: [
{
text: 'A',
isActive: true
},
{
text: 'B',
isActive: false
},
{
text: 'C',
isActive: false
}
],
doSomthing: function(e){
console.log(this)
}
};
},
method: {
},
computed: {
}
};
</script>
は、なぜあなたはしかし、あなたのデータに関数を定義します - もしあなたが本当にそれを望むなら、あなたは 'function(e){console.log(this);}のようにする必要があります。 } .bind(this) ' - これはあなたのメソッドにあることが望ましいでしょう(あなたが定義したメソッドではありません) –
ありがとう!私はちょうど好奇心を持っています。私はあなたから助けを得る。ありがとうございました! –