我在这里填写localStorage
:
let storageObj = {};
storageObj.date = (new Date().toLocaleString().replace(", ","T"));
storageObj.url = this.responseURL;
localStorage.setItem(storageObj.date, storageObj.url);
在mounted()
我正在迭代来自localStorage
的所有数据,如:
for(let obj of Object.entries(localStorage))
{
this.lastpasts.push(obj);
}
将每个对象放置到lastpasts
(位于data() {lastpasts : []}
)。
在模板中,我只想打印url
:
<div class="ui divided items" v-for="el in lastpasts">
<div class="item">
{{el.url}}
</div>
</div>
但是这段代码什么都不打印。仅限{{el}}
。它在HTML块中打印:
[ "24.06.2017T11:55:10", "362e9cc5-e7e6" ]
[ "24.06.2017T12:26:47", "b0f9f20d-7851" ]
浏览器控制台没有任何错误。
答案 0 :(得分:3)
在聊天会话中,我们设法解决了他的问题。
这是因为他使用的是数组而不是数组对象。由于Array只能用于索引,而不能用于字段名称,因此{{el.url}}
无效。
从LocalStorage
获取值的代码必须更改为:
mounted() {
for(let obj of Object.entries(localStorage)) {
var x = {};
x.url = obj[0];
x.date = obj[1];
this.lastpasts.push(x);
}
}
现在,可以使用{{el.url}}