ElementUI消息框内使用的vue组件无法访问vuex存储

时间:2019-02-22 09:53:05

标签: vue.js element-ui

我正在尝试将elementUI message box与一个简单的组件一起使用。 该组件应仅访问商店并提供用户名:

// 'MyCmp.vue'
<template>
  <div>
    <p>Name: {{fullname}}</p>
  </div>
</template>

<script>
export default {
  computed: {
    fullname() {
      return this.$store.getters.fullname;
    }
  }
};
</script>

但是问题是我可以在框中看到硬编码的字符串:“名称”,但是由于$storethis,所以无法访问undefined。这是我的消息框的完整代码:

showMessageBox(userAction) {
  const h = this.$createElement;
  MessageBox.prompt(this.$t("insertEmail"), {
    message: h(myCmp, {key: this.key++}))
  })
    .then(({ value }) => {
      console.log("in");
      MessageBox.message({
        type: "success",
        message: "yourEmailIs" + value
      });
    })
    .catch(() => {
      console.log("error");
      MessageBox.message({
        type: "info",
        message: "cancel"
      });
    });
}

我希望它能根据文档和这份官方文档jsfiddle正常工作 他们提供,我在实施过程中遵循。 知道为什么我无法访问$store / this在组件内部未定义吗?

更新jsfiddle

0 个答案:

没有答案