我有一个简单的 Vue 组件来呈现一个区域对象。它工作正常,并具有以下内容:to="{ name: 'TerritoryContactList', params: { id: territory.id }}"
以更改路线。
现在,我有一个新的 Parent 组件,需要使用相同的组件,但要防止它转到新的路由。相反,我想实现一个@click(handler)
.
在这种情况下,最佳做法是什么?
<v-list-tile :to="{ name: 'TerritoryContactList', params: { id: territory.id }}" avatar>
<v-list-tile-avatar color="amber" style="margin-right:3px">
<v-icon color="white">map</v-icon>
</v-list-tile-avatar>
<v-list-tile-content>
<v-list-tile-title v-html="territory.name"></v-list-tile-title>
<v-list-tile-sub-title>{{territory.region.name}}</v-list-tile-sub-title>
</v-list-tile-content>
<v-list-tile-action>
<v-list-tile-action-text>{{territory.address_count}}</v-list-tile-action-text>
</v-list-tile-action>
</v-list-tile>
为了使您的组件在不同情况下都能正常工作,我建议在组件外部处理组件中的 click 事件:
1.当用户点击组件时发出事件:
<v-list-tile @click="this.$emit('clickListTile')" avatar>
</v-list-tile>
2.在你的父组件中处理事件:
<your-component @clickListTile="doSomething"></your-component>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句