这是一个有这个问题的jsfiddle,但请小心,因为它包含无限循环并使浏览器选项卡滞后并最终冻结,如果您打开控制台:https://jsfiddle.net/evx1j6yf/1/
阵列:
days: [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday"
],
openingDays: []
模板:
{% for day in days %}
{[ formatDays(day) ]}
{% endfor %}
formatDays:
formatDays(day) {
message = translateDays(day);
openingDays.push(message);
}
我的期望:我的第二个阵列应填充一份日期副本 我得到了什么:一个无限循环,在最后一天之后,它只是无限地重复着。
Console.log:
["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", ...
答案 0 :(得分:2)
我得到了什么:一个无限循环,在最后一天之后,它只是无限地重复着自己。
每当您调用formatDays
时,都会导致重新渲染,因为正在更改模板中显示的数据。由于formatDays
是一种方法,并且使用{{}}
直接在模板中使用,因此每次重新渲染时都会调用它。因此无限循环。
我的期望:我的第二个数组应填充日期副本。
我已更新您的fiddle。