相关疑难解决方法(0)

如何在本地存储(或其他地方)中保留ES6地图?

var a = new Map([[ 'a', 1 ]]);
a.get('a') // 1

var forStorageSomewhere = JSON.stringify(a);
// Store, in my case, in localStorage.

// Later:
var a = JSON.parse(forStorageSomewhere);
a.get('a') // TypeError: undefined is not a function
Run Code Online (Sandbox Code Playgroud)

不幸的是JSON.stringify(a);简单地返回'{}',这意味着当恢复时它变成一个空对象.

我发现es6-mapify允许在Map和普通对象之间进行向上/向下转换,因此这可能是一个解决方案,但我希望我只需依靠外部依赖来持久保存我的地图.

javascript json dictionary ecmascript-6

61
推荐指数
5
解决办法
1万
查看次数

将带符号的ES6类转换为JSON

我有硬编码的类来表示我的Aurelia应用程序中的模型.这是一个'PostEdit'模型:

var _postID = Symbol();
var _title = Symbol();
var _text = Symbol();

export class PostEdit {

    constructor(postEdit) {
        this[_postID] = postEdit.postID;
        this.title = postEdit.title;
        this.text= postEdit.text;
    }

    get postID() { return this[_postID]; }

    get title() { return this[_title]; }
    set title(val) { this[_title] = val; }

    get text() { return this[_text]; }
    set text(val) { this[_text] = val; }

}
Run Code Online (Sandbox Code Playgroud)

该对象被操纵后,我需要PUTPOST它回服务器.但它看起来像AureliaHttpClient是发送一个空JSON字符串({}).在研究它时,似乎Symbols在将ES6类转换为时忽略了JSON.

如何将所有属性都转换为JSON …

javascript json ecmascript-6 aurelia

7
推荐指数
3
解决办法
2万
查看次数

标签 统计

ecmascript-6 ×2

javascript ×2

json ×2

aurelia ×1

dictionary ×1