2017-06-24 86 views
0

在這裏,我填的陣列打印值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

能否請你放的'的console.log(EL)的結果' ? –

+0

'的ReferenceError:1:13' –

+0

噢,對不起EL不是在定義。我的錯。 'console.log(lastpasts)'(或lastposts?) –

回答

3

在聊天會話,我們設法解決他的問題。

它是由這樣的事實,導致他在用數組的數組,而不是對象的數組。因爲數組只能用於索引,而不是字段名稱,所以{{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}}

+0

哎呀,我會刪除我的答案因爲它相同,爲你+1 +1 –

+0

歡呼聲。當你寫下你的答案時,我們正在聊天和解決它:) –