【问题标题】:How do I add Vuex to my Laravel Nova Tool?如何将 Vuex 添加到我的 Laravel Nova 工具中?
【发布时间】:2020-02-19 12:59:23
【问题描述】:

如何将 Vuex 商店添加到我自定义生成的 Laravel Nova 工具中?

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

我在这个项目中使用的是 Nova 1.3.2。

【问题讨论】:

    标签: php laravel vuex laravel-nova


    【解决方案1】:

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

    我希望这会为您节省一些时间。

    【讨论】:

      猜你喜欢
      • 2021-08-22
      • 1970-01-01
      • 2019-03-30
      • 2021-06-16
      • 2019-08-16
      • 1970-01-01
      • 1970-01-01
      • 2019-02-14
      • 2019-02-02
      相关资源
      最近更新 更多