如何将Vuex添加到Laravel Nova Tool中?

时间:2019-10-23 09:53:52

标签: php laravel vuex laravel-nova

如何将Vuex存储添加到自定义生成的Laravel Nova工具中?

我在medium的主题上找到了这篇文章,但是该商店没有出现在de Tool.vue组件中。

我在此项目中使用Nova 1.3.2。

1 个答案:

答案 0 :(得分:2)

我发现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将所有资源添加到同一存储中,因此您必须使用命名空间存储来防止冲突。

我希望这可以节省您一些时间。