CocosCreator 微信小游戏 本地存储脚本

CocosCreator 微信小游戏 本地存储脚本

  • 简介
  • 注意事项
  • 代码

简介

为了在微信小游戏中为了保存一些游戏进度,并且兼容cocos内置的存储功能。

注意事项

wx.setStorage只有在微信环境下才可使用

cc.sys.localStorage.setItem是cocos内置的本地存储方案

代码

	/**
     * 存储数据
     *
     * @static
     * @param {string} key
     * @param {*} data
     * @memberof StorageUtil
     */
    static storageData(key: string, data: any) {
    	//这里判断是否为微信环境(使用你自己的判断方式)
        if (G.isWX) {
            wx.setStorage({
                key: key, data: data,
                success(res) {
                    console.log("-->Set--" + data)
                }
            })
        } else {
            cc.sys.localStorage.setItem(key, data);
        }
    }
	/**
     * 读取数据
     *
     * @static
     * @param {string} key
     * @returns {*}
     * @memberof StorageUtil
     */
    static getData(key: string): any {
      	//这里判断是否为微信环境(使用你自己的判断方式)
        if (G.isWX) {
            var value = wx.getStorageSync(key)
            console.log("-->Get--" + value)
            return value
        } else {
            return cc.sys.localStorage.getItem(key);
        }
    }
     /**
     * 移除数据
     *
     * @static
     * @param {string} key
     * @memberof StorageUtil
     */
    static removeData(key: string) {
    	//这里判断是否为微信环境(使用你自己的判断方式)
        if (G.isWX) {
            wx.removeStorage({
                key: key,
                success(res) {
                    console.log("-->Remove--" + res)
                }
            })
        } else {
            cc.sys.localStorage.removeItem(key);
        }
    }
    static hasData(key: string): boolean {
    	//这里判断是否为微信环境(使用你自己的判断方式)
        if (G.isWX) {
            if (wx.getStorage({ key: key, }) == undefined) {
                return false

            } else {
                return true

            }
        } else {
            if (cc.sys.localStorage.getItem(key) == undefined) {
                return false;
            } else {
                return true;
            }
        }
    }

你可能感兴趣的:(CocosCreator)