router.pu sh после топора ios пост, Vuejs - PullRequest
0 голосов
/ 26 февраля 2020

Я пытаюсь перенаправить после отправки почтового запроса, и я пробовал разные вещи, но до сих пор ничего не работало.

self.$router.push('/record')
Vue.$router.push('/record')
this.$router.push({ name: 'Record' })

Вот обновленный код. с топором ios компонент формы, приложение js и основной. js

axios.delete('/record/' + this.id)
.then((response) => {
    this.$router.push('/record')
    });
})
.catch(error => {
    //
});

В моем приложении. js

import VueRouter from "vue-router";
import router from "./router";

Vue.use(VueRouter);

new Vue({
    router,
    render: h => h(App)
}).$mount("#app");

маршрутизатор. js

import Vue from "vue";
import VueRouter from "vue-router";
import Record from './components/AddPerson';

Vue.use(VueRouter);

const routes = [
    {
        path: "/record",
        name: "Record",
        component: Record,
    },
];


const router = new VueRouter({
    mode: "history",
    base: process.env.BASE_URL,
    routes
});

export default router;

1 Ответ

0 голосов
/ 26 февраля 2020

Вы пытаетесь перенаправить на тот же маршрут?

Vue кэширует компоненты, потому что это быстрее.

Если это ваша проблема, вы должны сделать что-то вроде это:

<template>
  <v-app>
    <router-view :key="$route.fullPath" />
  </v-app>
</template>

<script>
export default {
  name: 'App',
};
</script>
axios
  .delete(`/record/${this.id}`)
  .then(response => {
    this.$router.push({
      name: 'Record',
      query: { x: new Date().toISOString() },
    });
  })
  .catch(error => {
    //
  });
...