本地存储中的日期变量在IE11中不起作用

时间:2019-08-30 06:59:05

标签: javascript reactjs typescript sharepoint

我有一些代码可以将不同类型的数据发送到本地存储。但是,其中一些是“未定义的”,而这只是IE11的问题。

public getEvents(): Promise<IEventItem[]> {  
    return new Promise<IEventItem[]>(( resolve) => {  

    //get the items that I want to store 

       sp.web.getList(window.location.pathname + '/Lists/Events').renderListDataAsStream(this.getParams()).then((streamitems) => {
            const _items: IEventItem[] = [];

           streamitems.Row.map((elem) => {

                _items.push({  
                    Title: elem.Title,  
                    Date: new Date(elem.EventDate), //undefined
                    EndDate: new Date(elem.EndDate), //undefined
                    Category: elem.Category,
                    Location: elem.Location,
                    ID: elem.ID,
                    IsCached: false,

                });
                window.localStorage.setItem(this.cacheKey, JSON.stringify(_items));
            });


            resolve(_items);
        });
    });
}

请参阅上面的代码及其注释。如果我愿意的话

Date: elem.EventDate

我得到了一个值,但是却遇到了其他问题,并且需要创建一个新的Date类。有帮助吗?

1 个答案:

答案 0 :(得分:0)

我记得过去在IE上也有类似的问题。 你可以尝试:

Date: moment(elem.EventDate).toDate()