【发布时间】:2017-07-09 11:23:27
【问题描述】:
我的看法是这样的:
<!-- By Players -->
<div class="row no-gutter">
<div class="col-md-3">
<h2 class="nav-cat-text">By Players</h2>
</div>
<div class="col-md-9 col-xs-12">
<div class="wrap-tabs">
<ul class="nav nav-tabs nav-cat">
@foreach($by_players as $category)
@php
if($loop->first)
$category_id = $category->id
@endphp
<li role="presentation" class="{{ $loop->first ? 'active' : '' }}"><a href="javascript:;" data-toggle="tab" @click="$refs.player.getPlayer({{ $category->id }})">{{ ucfirst($category->name) }}</a></li>
@endforeach
</ul>
</div>
</div>
</div>
<br>
<!-- Tab panes -->
<div class="tab-content">
<div role="tabpanel" class="tab-pane active">
<top-player-view category_id="{{ $category_id }}" ref="player"></top-player-view>
</div>
</div>
<br>
<!-- By Types -->
<div class="row no-gutter">
<div class="col-md-3">
<h2 class="nav-cat-text">By Types</h2>
</div>
<div class="col-md-9 col-xs-12">
<div class="wrap-tabs">
<ul class="nav nav-tabs nav-cat">
@foreach($by_types as $category)
@php
if($loop->first)
$category_id = $category->id
@endphp
<li role="presentation" class="{{ $loop->first ? 'active' : '' }}"><a href="javascript:;" data-toggle="tab" @click="$refs.player.getPlayer({{ $category->id }})">{{ ucfirst($category->name) }}</a></li>
@endforeach
</ul>
</div>
</div>
</div>
<br>
<!-- Tab panes -->
<div class="tab-content">
<div role="tabpanel" class="tab-pane active" >
<top-player-view category_id="{{ $category_id }}" ref="player"></top-player-view>
</div>
</div>
我的顶级播放器视图组件是这样的:
<template>
...
</template>
<script>
export default {
props:['category_id'],
mounted() {
const payload = {category_id: this.category_id}
this.$store.dispatch('getTopPlayers', payload)
},
methods: {
getPlayer: function(category_id) {
const payload = {category_id: category_id}
this.$store.dispatch('getTopPlayers', payload)
}
}
}
</script>
代码执行后,玩家数据 = 类型数据。而传输的属性数据是不同的。此外,当我点击任何标签时,按玩家和按类型显示的数据是相同的
我该如何解决?
【问题讨论】:
标签: vue.js vuejs2 vue-component vue-resource