1. 程式人生 > >Egret之微信小遊戲基礎Bug修復

Egret之微信小遊戲基礎Bug修復

Egret 微信小遊戲 小遊戲 問題 基礎

一 : 第三方類庫未定義

如 : smallLib類庫

技術分享圖片

解決方案:

找到wxgame.ts , 在onFile方法中加入

			if(filename == "libs/modules/smallLib/smallLib.js" || filename == "libs/modules/smallLib/smallLib.min.js"){
									content += ";window.smallLib = smallLib;"
				}


二:第二加載問題

使用URLLoader 或 HttpRequest加載包內資源,都不會成功 , so

1 , 在default_res.json中配置文件

技術分享圖片

2,Main.ts 加載

//微信特殊的加載方案
if( egret.Capabilities.runtimeType == egret.RuntimeType.WXGAME ){
    await RES.loadGroup( "config" , 1 , null );
    await RES.getResAsync("common_xml").then(
        $value=>{
            console.log(`微信加載配置方案成功 : ${$value}`);
            common.XmlCommonConfigManager.Instance.root = egret.XML.parse( <string>$value);
        },
        $error=>{
            console.log("微信加載配置方案錯誤");
        }
    );
}


三:xml問題

1,使用xmldom.zip包(附件提供)

2,解壓放入到微信項目的根目錄

技術分享圖片

3,找到game.js , 在"egret.runEgret"上加入 window.DOMParser = require("./xmldom/xmldom.js").DOMParser;

技術分享圖片


四:自定義皮膚的問題

需要暴露類

技術分享圖片

代碼:

module common{
    /**
     * 通用面板皮膚
     * @author Husz
     */
    export class CommonPanel extends eui.Component implements eui.UIComponent{

    }
    if( egret.Capabilities.runtimeType == egret.RuntimeType.WXGAME ){
        window["CommonPanel"] = CommonPanel;
    }
}


Egret之微信小遊戲基礎Bug修復