我正在尝试在一个webpack项目(es6,目标环境:浏览器)中使用ammo.js。我通过npm安装了ammo.js,并给webpack添加了如下配置,解决了fs未知模块的问题:
// Issue: https://github.com/kripken/emscripten/issues/6542.
plugins: [new webpack.IgnorePlugin(/(fs)/)],我的问题是在运行时,当我尝试使用Ammo.btHeightfieldTerrainShape类时,我得到了一个“未定义”的错误,而其他的Ammo方法似乎就在那里。我像这样导入Ammo:
import * as Ammo from 'ammo.js';(也像这样尝试过:import Ammo from 'ammo.js';)
我的问题是:为了初始化库以使缺少的类可用,我还缺少一些额外的步骤?在浏览器中,似乎你必须等待一个关于Ammo全局方法的承诺,然后使用库,但我需要的Ammo是一个对象,而不是一个函数。
发布于 2020-02-12 01:49:43
终于解决了..。如果其他人有同样的问题:请确保npm包安装为:
npm init --save "kripken/ammo.js"我只是做了:
npm init --save ammo.js而那个不是正确的回购。这就是为什么它不是最新的。要使用模块,我必须使用:
import * as Ammo from 'ammo.js';https://stackoverflow.com/questions/60154229
复制相似问题