【问题标题】:How to access app.vue methods from es6-module?如何从 es6-module 访问 app.vue 方法?
【发布时间】:2020-02-26 10:22:55
【问题描述】:

我正在使用 webpack、vuex 和 vue-router 构建一个 vuejs 应用程序。

我的项目结构如下所示:

[组件]

  • BlockingLayer.vue

[商店]

  • index.js

[restapi]

  • index.js

App.vue

main.js

我在 App.vue 中使用 BlockingLayer.vue。 App.vue 有显示/隐藏 BlockingLayer 的方法。

现在我希望能够从 [restapi] index.js 触发这些方法 - 我该怎么做?

我尝试在我的 restapi 模块中导入 App.vue - 不起作用。同时在restapi中导入存储完美无缺。在 store 中导入 restapi 并在那里使用它也可以正常工作。我可以做的是在商店内而不是在 App.vue 内使用变量来显示/隐藏我猜的 BlockingLayer,但这并不是我想说的商店的真正用途......

【问题讨论】:

  • VuexVue状态管理 扩展/插件。它应该存储状态。显示/隐藏的图层 - 这是您的应用程序中的一种状态。我认为将状态存储在状态管理工具中是可以的。
  • 您在 Vuex 中存储状态的方法是正确的。但是,一个问题是,当您可以在调用该 api 的 vue 组件中执行此操作时,为什么要在 restapi/index.js 中触发 vue 方法

标签: javascript vue.js vuejs2 es6-modules


【解决方案1】:

我正在使用 vuex 来存储 BlockingLayer 的状态,并使用 vuex 操作来显示/隐藏它,而不是现在将状态存储在 App.vue 中。像魅力一样工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-26
    • 2018-06-27
    • 1970-01-01
    • 1970-01-01
    • 2017-09-03
    • 1970-01-01
    • 1970-01-01
    • 2018-07-04
    相关资源
    最近更新 更多