没有合适的资源?快使用搜索试试~ 我知道了~
微信小程序require 引用 BASE64.JS 失败问题的分析解决
需积分: 38 4 下载量 86 浏览量
2021-03-29
21:01:28
上传
评论
收藏 42KB PDF 举报
温馨提示
试读
2页
# 问题 有朋友问, 微信小程序require ('base64.js')文件时,会失败,,, # 分析 事实上,微信小程序require很多JS模块都有不兼容现象。。。先从base64.js这个模块入手吧。 调试出错点: ~~~~ (function(global) { 'use strict'; // existing version for noConflict() var _Base64 = global.Base64; // 这句出错了...变量global的值是传入的this指针值,this指针为空了. var version = "2.1.9"
资源推荐
资源详情
资源评论
微信小程序微信小程序require 引用引用 BASE64.JS 失败问题的分析解决失败问题的分析解决
# 问题
有朋友问, 微信小程序require ('base64.js')文件时,会失败,,,
# 分析
事实上,微信小程序require很多JS模块都有不兼容现象。。。先从base64.js这个模块入手吧。
调试出错点:
~~~~
(function(global) {
'use strict';
// existing version for noConflict()
var _Base64 = global.Base64; // 这句出错了...变量global的值是传入的this指针值,this指针为空了.
var version = "2.1.9";
// if node.js, we use Buffer
var buffer;
~~~~
调试了一下,主要现象
base64.js 代码里面假定了this指定非空。微信小程序require调入进来后,this指针为空,就会抛出异常。
# 处理
知道这个修改就较容易了:
两处改动:
一 避免global为空指针
~~~~
代码头部几行
(function(global) {
'use strict';
// existing version for noConflict()
var _Base64 = global.Base64;
var version = "2.1.9";
~~~
添加两行改为
~~~
(function(global) {
'use strict';
// existing version for noConflict()
var _Base64 = global.Base64;
var version = "2.1.9";
if (!global)
global = {}
~~~
二 添加module.exports
~~~
文件尾部几行
}
// that's it!
if (global['Meteor']) {
Base64 = global.Base64; // for normal export in Meteor.js
}
})(this);
~~~
添加一行
~~~
}
// that's it!
if (global['Meteor']) {
资源评论
weixin_38629976
- 粉丝: 7
- 资源: 972
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功