在微信小程序的TypeScript中定义全局变量

问题描述 投票:0回答:1

尊敬的StackOverflow用户,

我为浏览器微信小程序]都制作了一个模块。该模块用多种TypeScript编写,并被编译为一个缩小的文件。在该模块中,我需要使用DOM / BOM API,例如document,'window , 'navigator。在浏览器上,加载和使用编译后的单个文件没有问题。

但是在微信小程序上,没有global对象。也不存在浏览器上的documentwindow全局对象。为了解决这个问题,我为每个环境制作了两个构建命令。

  • grunt build,浏览器的标准TS编译
  • [grunt wx_build,标准TS编译并为微信小程序添加补丁代码
  • 修补的js文件如下:

// mymodule-bundle.min.js

// patch
window=require("./miniapp-adapter/src/index.js");
document=require("./miniapp-adapter/src/document.js").default;

// original compiled/minified code
(function(f){if(typeof exports==="object"&&typeof module!=="undefined")...

在微信小程序项目中,我将mymodule-bundle.min.jsminiapp-adapter放在同一文件夹中。结果,我可以将HTML5应用程序移植到微信小程序。

但是我想要一种更聪明的方法。

如何为微信小程序运行时在window中声明documentmymodule.ts全局变量?

谢谢。

尊敬的StackOverflow用户,我为浏览器和微信小程序制作了一个模块。该模块用多种TypeScript编写,并被编译为一个缩小的文件。在该模块中,我需要使用...

typescript dom wechat javascript-scope wechat-miniprogram
1个回答
0
投票

这里是它们的声明方式:

© www.soinside.com 2019 - 2024. All rights reserved.