ルート変更時にコンポーネントを再レンダリングする方法はありますか? Vue Router 2.3.0を使用しています。複数のルートで同じコンポーネントを使用しています。それは最初にうまく動作するか、コンポーネントを使用していないルートに移動して、そのルートに移動した場合は正常に動作します。私はその後、私は新しいマップ、新しいデータをロードするために小道具を使用していますが、マップは、それが最初にロードされたときと同じままそうルート変更時のVueJsコンポーネントの更新
{
name: 'MainMap',
path: '/',
props: {
dataFile: 'all_resv.csv',
mapFile: 'contig_us.geo.json',
mapType: 'us'
},
folder: true,
component: Map
},
{
name: 'Arizona',
path: '/arizona',
props: {
dataFile: 'az.csv',
mapFile: 'az.counties.json',
mapType: 'state'
},
folder: true,
component: Map
}
などの小道具に違うものを渡しています。私は何が起こっているのか分からない。
コンポーネントは次のようになります。
data() {
return {
loading: true,
load: ''
}
},
props: ['dataFile', 'mapFile', 'mapType'],
watch: {
load: function() {
this.mounted();
}
},
mounted() {
let _this = this;
let svg = d3.select(this.$el);
d3.queue()
.defer(d3.json, `static/data/maps/${this.mapFile}`)
.defer(d3.csv, `static/data/stations/${this.dataFile}`)
.await(function(error, map, stations) {
// Build Map here
});
}
コンポーネントを表示しますか? – Bert
また、どのルータのバージョンですか? – Bert
@BertEvans私はコンポーネントとvueルータのバージョンで質問を更新しました。ありがとう – user1627827