Laya微信小游戏的开放域
版本2.1.1.1
现在Laya的开放域比较好用了。
新建开放域项目,里面直接有个排行榜的示例。

直接发布

得到较少的文件,复制这些文件,粘贴到主项目bin/openDataContext下。 (openDataContext文件夹需要自己创建)

并将开放域项目下libs/laya.opendata.js也复制到主项目bin/openDataContext/libs下 (libs文件夹需要自己创建)

复制开放域项目下的laya/assets/test的排行榜图片复制到主项目的bin/test下,否则开放域找不到图片地址下载

最终微信项目文件如下

设置主项目release/wxgame/game.json,增加 "openDataContext":"openDataContext"

主项目的TestScene中创建一个组件WXOpenDataViewer。 在Basics/UI下倒数第3个。(直接右键-创建UI组件,是没有这个组件的)
这个WxOpenDataViewer是显示开放域的,你可以理解为这是一个电视,里面播着开放域的界面。

主域通知开放域显示排行榜
GameUI.ts:
onEnable(): void {
Laya.loader.load(["res/atlas/test.atlas"],Laya.Handler.create(this,()=>{
//使用接口将图集透传到子域
Laya.MiniAdpter.sendAtlasToOpenDataContext("res/atlas/test.atlas");
}));
}
开放域接收消息,并显示排行榜
Main.ts:
class Main {
constructor() {
//设置子域
Laya.isWXOpenDataContext = true;
Laya.isWXPosMsg = true;
//根据IDE设置初始化引擎
Laya.init(GameConfig.width, GameConfig.height,false);
Laya.stage.scaleMode = GameConfig.scaleMode;
Laya.stage.screenMode = GameConfig.screenMode;
Laya.stage.alignV = GameConfig.alignV;
Laya.stage.alignH = GameConfig.alignH;
// 关于透传接口,请参考: https://ldc2.layabox.com/doc/?nav=zh-ts-5-0-7
if(Laya.Browser.onMiniGame)
wx.onMessage(function(data){
console.log("子域收到消息:", data);
if(data.url == "res/atlas/test.atlas" ){
Laya.loader.load("res/atlas/test.atlas",Laya.Handler.create(this,this.onComplete));
}
}.bind(this));
else
Laya.loader.load("res/atlas/test.atlas",Laya.Handler.create(this,this.onComplete));
}
onComplete(): void {
//初始化rank排行榜
var rank = new BigRank();
//初始化
rank.init();
}
}
把开放域的BigRank的this.getFriendData();注释掉

主项目发布,微信开发者工具打开,最终显示

Laya微信小游戏的开放域的更多相关文章
- Laya微信小游戏的动态资源
版本2.1.1. 由于有4m包限制,所以一般小游戏项目分成主包+远程资源. 现在我新建一个remote目录,该目录下资源不发布到微信小游戏目录下,而是服务器远程加载. 发布时,勾线是否提取本地包 远程 ...
- Laya微信小游戏本地缓存
测试版本2.1.1.1 查看bin/libs/laya.wxmini.js. 发现只会缓存png,jpg. 声音和atlas,json不会缓存. 对比白鹭,白鹭是将png,jpg,atlas,json ...
- 使用Laya引擎开发微信小游戏(下)
本文由云+社区发表 6. 动画 6.1 创建伞兵对象 在src目录下创建一个新目录role,用来存放游戏中角色. 在role里创建一个伞兵Soldier.ts对象文件. module role{ ex ...
- 使用Laya引擎开发微信小游戏(上)
本文由云+社区发表 使用一个简单的游戏开发示例,由浅入深,介绍了如何用Laya引擎开发微信小游戏. 作者:马晓东,腾讯前端高级工程师. 微信小游戏的推出也快一年时间了,在IEG的游戏运营活动中,也出现 ...
- 使用Laya引擎开发微信小游戏
在支持微信小游戏的游戏引擎中,Cocos,Egret,Laya都对小游戏的开发提供了很多强大的支持.前段时间正好抽空研究了一下这块的内容,现做一个总结,针对如何使用Laya引擎开发微信小游戏给大家做一 ...
- laya在微信小游戏中加载BitmapFont失效的问题
发布为微信小游戏后,在微信工具中测试时总是提示加载retry to load TheRed.fnt,并以error告终.由于没有任何出错信息,无奈之下只好阅读源码.对BitmapFont的处理分为两个 ...
- Egret5.2.2 微信小游戏行的示例排行榜
Egret5.2.2版本发布微信小游戏后,在开放数据域有一个默认排行榜.这个文件夹代码+图大小就22kb. 排行榜的效果就是示范用的,很丑...带翻页. 代码如下,基本就是使用canvas渲染了一个排 ...
- Egret白鹭开发微信小游戏排行榜功能
推荐阅读: 我的CSDN 我的博客园 QQ群:704621321 我的个人博客 最近事情特别多,今天终于实现了排行榜功能,记录下来大家一起学习学习. 一.调用默认排行榜 首先我们需要了解: 1.白鹭开 ...
- cocosCreator微信小游戏排行榜思路
cocosCreator制作微信小游戏排行榜实现方案: 游戏认知:项目分为主域和子域,主域就是游戏主程部分,子域为单独处理微信排行榜公共域数据的. 游戏主域里创建一个节点,添加WXSubContext ...
随机推荐
- Linux命令——gdisk、fdisk、partprobe
gdisk.fdisk MBR分区表请使用fdisk分区,GPT分区表请使用gdisk分区 MBR与GPT区别参考:Linux磁盘管理——MBR 与 GPT gdisk.gdisk这两个命令参数不需要 ...
- SHA-1算法——(2)
地址:https://www.alvestrand.no/objectid/1.3.14.3.2.26.html 地址:http://oidref.com/1.3.14.3.2.26 这个值好像是个标 ...
- python+正则提取+ip代理爬取糗事百科文字信息
很多网站都有反爬措施,最常见的就是封ip,请求次数过多服务器会拒绝连接,如图: 在程序中设置一个代理ip,可有效的解决这种问题,代码如下: # 需要的库 import requests import ...
- Kotlin调用Java程序解析
Kotlin跟Java是百分百兼容的,换言之,也就是它们俩是可以互操作的,也就是Java可以调Kotlin,Koltin可以调Java,所以下面来看一下在Kotlin中如何来调用Java代码: 咱们来 ...
- Kotlin注解深入解析与实例剖析
在上一次https://www.cnblogs.com/webor2006/p/11522798.html中学习了Kotlin注解相关的东东,这次继续对Kotlin的注解继续学习: 注解也可以拥有自己 ...
- python 中的tile函数,shape函数,sum函数
1.tile函数: tile函数是模板numpy.lib.shape_base中的函数.函数的形式是tile(A,reps) A的类型几乎所有类型都可以:array, list, tuple, dic ...
- c++合并两个序列函数merge()和inplace_merge()
大家在写归并排序时是不是觉得合并两个序列有点麻烦,有快速的方法吗? 我们全部函数自己写,比如: #include<bits/stdc++.h> using namespace std; # ...
- 学到了林海峰,武沛齐讲的Day49 django
django 终于等到啦,好东西上场了 blog---- 个体应用文件 model.py 数据库文件 views.py 视图文件 admin.py 后台文件,操纵数据库文件 manage.py --- ...
- asp.net大附件上传,支持断点续传
以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载. 准备文件上传的API #region 文件上传 ...
- WinDbg常用命令系列---输入内存值的命令e*
e, ea, eb, ed, eD, ef, ep, eq, eu, ew, eza (Enter Values) e*命令将您指定的值输入内存.不要将此命令与~e(Thread-Specific C ...