Я обнаружил, что Nova уже использует Vuex, и вы можете добавить свой собственный модуль магазина Vuex в существующее хранилище.
Это не описано в документации, поэтому я не знаю, будет ли это продолжать работатьв более новых версиях, но, похоже, добиваться цели в Nova 1.3.
Вы можете зарегистрировать модуль Vuex в ваших nova-components / MyTool / resources / js / tool.js следующим образом:
import datastore from './store/datastore'
Nova.booting((Vue, router, store) => {
store.registerModule(
'mynamespace/datastore', datastore
);
// router.addRoutes( ......
});
И вы можете использовать его в своем Tool.vue какэто:
<template>
<div>
{{ testing }}
</div>
</template>
<script>
import {mapGetters} from 'vuex'
export default {
mounted() {
},
computed: {
...mapGetters({
testing: 'mynamespace/datastore/testing'
})
}
}
<script>
Nova добавляет все ресурсы в это же хранилище, поэтому вам нужно использовать хранилище с пространством имен для предотвращения конфликтов.
Надеюсь, это сэкономит вам время.