Egret社区
终于弄成了,在官方第三方库的使用方法之外,还有3个要点:
1. 用npm安装lodash的类型声明:
npm install --save @types/lodash

2.类型声明指向目录而非文件,在package.json中
"typings": "node_modules/@types/lodash/"

3.在lodash.js末尾
        // Export for CommonJS support.
下添加
        window._ = _;

以便支持微信小游戏。





分享到 :
0 人收藏

9 个回复

倒序浏览
jacksplwxy  登堂入室 | 2018-10-15 16:56:04
按您的方式引入了lodash,微信开发工具上ok,但是真机报错:prototype undefine,不知您有没有遇到此问题?
微信图片_20181015165836.png
lity  登堂入室 | 2018-10-15 23:48:07
jacksplwxy 发表于 2018-10-15 16:56
按您的方式引入了lodash,微信开发工具上ok,但是真机报错:prototype undefine,不知您有没有遇到此问题? ...

tsconfig.json中
"sourceMap": false
不能是true
你检查一下看行不行
jacksplwxy  登堂入室 | 2018-10-16 09:02:05
真机还是不行,能不能帮我看下附件哪里有问题?  

test.zip

1.11 MB, 下载次数: 10, 下载积分: 银子 -1

lity  登堂入室 | 2018-10-16 17:14:24
jacksplwxy 发表于 2018-10-16 09:02
真机还是不行,能不能帮我看下附件哪里有问题?

原因在这里:https://cnodejs.org/topic/5846b2883ebad99b336b1e06

解决方法:
lodash.js 421行附近
var root = freeGlobal || freeSelf || Function('return this')();
替换为
var root = {
   Array: Array,
   Date: Date,
   Error: Error,
   Function: Function,
   Math: Math,
   Object: Object,
   RegExp: RegExp,
   String: String,
   TypeError: TypeError,
   setTimeout: setTimeout,
   clearTimeout: clearTimeout,
   setInterval: setInterval,
   clearInterval: clearInterval
};
lity  登堂入室 | 2018-10-16 18:12:59
jacksplwxy 发表于 2018-10-16 09:02
真机还是不行,能不能帮我看下附件哪里有问题?

为了同时兼容微信环境和非微信环境,可以这样改
  var root = navigator.userAgent.toString().indexOf("MicroMessenger") >= 0 ? {
    Array: Array,
    Date: Date,
    Error: Error,
    Function: Function,
    Math: Math,
    Object: Object,
    RegExp: RegExp,
    String: String,
    TypeError: TypeError,
    setTimeout: setTimeout,
    clearTimeout: clearTimeout,
    setInterval: setInterval,
    clearInterval: clearInterval
  } : freeGlobal || freeSelf || Function('return this')();
jacksplwxy  登堂入室 | 2018-10-17 09:06:33
lity 发表于 2018-10-16 18:12
为了同时兼容微信环境和非微信环境,可以这样改
  var root = navigator.userAgent.toString().indexOf(" ...

非常感谢你的耐心回复,问题已解决
第五明辉  圆转纯熟 | 2018-12-26 15:04:44
jacksplwxy 发表于 2018-10-17 09:06
非常感谢你的耐心回复,问题已解决

求引入该库 适应小游戏的方案
heirelance  登堂入室 | 2018-12-29 08:24:53
本帖最后由 heirelance 于 2018-12-29 08:27 编辑

推广一波:可以试下用npm install -g ethird来构建@types的三方包哦
pilihou  圆转纯熟 | 2018-12-29 09:40:59
看这个源码代码写的比较长呀。很多方法用不到,这个库引入微信小游戏太大吧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部