【发布时间】:2021-02-27 14:19:12
【问题描述】:
我有一个组件必须将属性推送到数组中,这是数组:
[
{
date: "17/11/2020",
dateTime: false,
hour: "00",
minute: "00",
},
];
组件有一个按钮:
<b-button
class="p-0"
variant="success"
@click="addTime(array)"
>
+ Add more times
</b-button>
我希望每次点击按钮都添加一个像这样的“时间”属性:
[
{
date: "17/11/2020",
dateTime: false,
hour: "00",
minute: "00",
time: [
{
defaultDateStart: "08:00",
defaultDateEnd: "00:00"
},
{
defaultDateStart: "08:00",
defaultDateEnd: "00:00"
},
//etc....
],
},
];
有可能吗?我尝试在 click 方法中使用 .push() ,但它不起作用...
【问题讨论】:
-
显示你的代码,无论你到目前为止尝试过什么
-
您的
time属性格式错误......它应该是一个对象数组,而不是不可能的数组对象 - 除此之外,您还想this.whateverTheArrayIsCalled[0].time.push(whatYouWantToPush) -
@FahadSubzwari 我试过这个:`方法:{ addTime(array) { const hour = { defaulTimeStart: "08:00", defaultTimeEnd: "00:00", }; array.push(小时); }, }, ` 但它不起作用
-
@Bravo 我试过了,它给了我这个错误处理程序:“TypeError:无法读取未定义的属性'0'”]
-
也许你打错了
whateverTheArrayIsCalled?您还没有显示该数据在哪里(即它是组件数据的属性吗?它是全局的吗?其他的?)
标签: javascript arrays vue.js object