首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从另一个数据属性引用Vue数据属性

如何从另一个数据属性引用Vue数据属性
EN

Stack Overflow用户
提问于 2018-07-02 18:42:39
回答 2查看 10.3K关注 0票数 6

我正在学习currentDashboard,所有从Vue.JS数据表达式引用仪表板属性的尝试都会导致“仪表板未定义”。Vue是在currentDashboard仪表板之前对表达式进行某种程度的评估,还是需要一些限定符来引用它,这没有帮助?

代码语言:javascript
运行
复制
vue = new Vue({
el: '#dashboard',
data: {
    dashboards: store.getDashboards(),
    currentDashboard: dashboards[0],
}

})

EN

回答 2

Stack Overflow用户

发布于 2018-07-02 18:50:30

我认为一种解决方案是可以使用computed方法,因为dashboards[0]不是在同一个created周期中定义的。试着做这样的事情:

代码语言:javascript
运行
复制
data: {
    dashboards: store.getDashboards(),
},
computed: {
  currentDashboard: function () { return this.dashboards[0] }
}

这样,在进行currentDashboard调用时就定义了变量,并且不必为这个var重构Vue.js调用。

编辑:是的,如果你想知道为什么,在正式文档中,你可以读到:

如果您知道稍后需要一个属性,但它开始为空或不存在,则需要设置一些初始值。

在本例中,data()方法从队列中的所有值开始,而不分配它,为此,起始值为undefined。这里:https://v2.vuejs.org/v2/guide/instance.html

希望能帮上忙!

票数 4
EN

Stack Overflow用户

发布于 2021-01-12 07:52:56

可以在返回dashboard属性之前创建data变量,以便在data属性中多次使用该变量。

代码语言:javascript
运行
复制
vue = new Vue({
el: '#dashboard',
data() {
    let dashboard = store.getDashboards()
    dashboards: dashboard,
    currentDashboard: dashboard[0],
}

我希望这能帮上忙

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51142070

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档