Quantcast
Channel: CSSタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8925

HTMLのストレージ機能への配列の入出力でハマったこと

$
0
0

sessionStorageとlocalStorageに配列を保存するときにエラーがでて嵌ったので、同じような人がいれば参考までに。

そもそも

詳細は下記をご参考ください。

sessionStorageをつかってみる
https://qiita.com/uralogical/items/ade858ccfa164d164a3b

失敗パターン

今回もVue.jsベースで話していきますが、他フレームワークでも同じです。

page1.vue
<template><div><div><button@click="test">テスト</button><ul><liv-for="item in list"v-bind:key="item.id">{{item.id}}/{{item.name}}</li></ul></div></div></template><script>exportdefault{data(){return{list:[]}},methods:{test:function(){constdata=[{id:1,name:'test1'},{id:2,name:'test2'},{id:3,name:'test3'}]window.sessionStorage.setItem("data",data)this.list=window.sessionStorage.getItem("data")}}}</script>

なぜ?

sessionStorageの格納情報を確認したところ、どうやら正しく情報が格納されていない様子。。。

対応方法

JSON配列に変換し使います。

page1.vue
<template><div><div><button@click="test">テスト</button><ul><liv-for="item in list"v-bind:key="item.id">{{item.id}}/{{item.name}}</li></ul></div></div></template><script>exportdefault{data(){return{list:[]}},methods:{test:function(){constdata=[{id:1,name:'test1'},{id:2,name:'test2'},{id:3,name:'test3'}]window.sessionStorage.setItem("data",JSON.stringify(data))this.list=JSON.parse(window.sessionStorage.getItem("data"))}}}</script>

うまくいきました!


Viewing all articles
Browse latest Browse all 8925

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>