gpt4 book ai didi

javascript - Vue2.js - 在对象内部调用方法并回调(本期)

转载 作者:行者123 更新时间:2023-11-29 11:03:20 26 4
gpt4 key购买 nike

上下文

我正在使用 Vue2.js 来实现 pickerOptions 以预选日期范围。我创建了一个函数 createDate 来实现它的功能。 DatePicker 组件来自 here

问题

我不知道在对象 pickerOptions 和回调函数 onClick(picker) 中调用函数 createdDate 的正确方法

当我这样做时,我得到了这个错误Uncaught TypeError: this.createdDate is not a function。这是有道理的,因为 this 指的是

Object {__ob__: Observer}
onClick:function onClick(picker)
text:"Last week"

我应该怎么做才能访问我的函数 createDate 或如何调用它?

export default {
name: 'app',
data() {
return {
private: {
pickerOptions: {
shortcuts: [{
text: 'Last week',
onClick(picker) {
const end = new Date();
const start = this.createDate(-7);
picker.$emit('pick', [start, end]);
}
}]
}
}
}
},
methods: {
createDate(days, months, years) {
let date = new Date();
date.setDate(date.getDate() + days);
date.setMonth(date.getMonth() + months);
date.setFullYear(date.getFullYear() + years);
return date;
},
}
};

最佳答案

在数据函数中获取引用应该可以让您进一步使用它。试试这个

data() { 
let self = this;
return {
....
const start = self.$options.methods.createDate(-7);
}
}

关于javascript - Vue2.js - 在对象内部调用方法并回调(本期),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43397320/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com