Возможно, вы захотите использовать хороший маршрутизатор для динамической обработки страниц в формате SPA.Похоже, Laravel Nova
использует vue-router
.
Он устанавливается под пользовательским компонентом при его создании, и если вы хотите использовать другие файлы vue или переключаться между ними, вам нужно добавить свой маршрут в файл nova-components\[your-component-name]\resources\js\tool.js
, добавив объект в массивмаршруты в этом формате:
{
name: '[route-name]',
path: '/[route-path]/:[sent-prop-name]',
component: require('./components/[your-vue-file]'),
props: route => {
return {
[sent-prop-name]: route.params.[sent-prop-name]
}
}
},
После добавления маршрутизатора в этот файл вы всегда можете использовать компонент <router-link></router-link>
внутри ваших файлов Vue для перенаправления на любой маршрут, который вы пожелаете (вы также можете отправить данные на маршрут какреквизит).Его основной формат выглядит следующим образом:
<router-link
class="btn btn-default btn-primary"
target="_blank"
:to="{
name: '[destination-route-name]',
params: {
[your-data-name]: [your-data-value]
}
}"
:title="__('[your-title]')"
>
Submit
</router-link>
PS: Конечно, вы можете пропустить реквизиты и параметры обоих, если не собираетесь отправлять и получать какие-либо данные в файл.
PS: Вы всегда можете посмотреть vue-router
документацию здесь , чтобы узнать больше возможностей.