我有一个子组件,它有这个方法:
getSubscriptions () {
MessageService.subscriptions()
this.$parent.loading = true;
.then((data) => {
if (data.data.subscriptions == null) {
this.noSubscriptions = true;
} else {
this.subscriptions = data.data.subscriptions;
}
this.$parent.loading = false;
}).bind(this);
}所以我想在我的父组件中显示一个加载圆,我像这样访问它:
this.$parent.loading(我的父组件有一个名为loading的数据属性)
但是当我尝试用gulp ^编译它时,我收到了:
[14:52:56] Starting 'browserify'...
46 | }
47 |
> 48 | t this.$parent.loading = false;
| ^
49 | }).bind(this);
50 | },
51 |
{ SyntaxError: unknown: Unexpected token (48:28)
46 | }
47 |
> 48 | t this.$parent.loading = false;
| ^
49 | }).bind(this);
50 | },这里会有什么问题呢?
(我使用的是Vue.js 1.0)
发布于 2016-10-13 21:34:50
您在promise设置过程中添加了一个新语句。您需要重新排列代码:
this.$parent.loading = true;
MessageService.subscriptions()
.then((data) => {但是,我不会像这样直接访问父级。它在父组件和子组件之间创建了紧密耦合--只有当父组件公开loading标志时,该组件才能工作。
相反,应该研究一下custom events。
https://stackoverflow.com/questions/40021896
复制相似问题