我找到了这个文件:
https://www.npmjs.com/package/@types/matter-js
我执行此行:
npm install --save @ types / matter-js
在root ts文件中我收到错误消息:
'物'是指UMD全局,但当前文件是一个模块。 请考虑添加导入。
代码如下:
///<reference path="matter-js.d.ts"/>
import Ioc from "./libs/ioc";
let master = new Ioc();
console.log(master);
console.log(Matter);
浏览器出错:
app.ts:11未捕获的ReferenceError:未定义物质
我需要加载matter-js.js lib吗?
如果我提出:
import matter from 'matter-js'
我得到:
模块&#39;&#39; matter-js&#39;&#39;没有默认导出。
答案 0 :(得分:3)
您可以尝试使用import * as matter from 'matter-js'
加载它,这应该可以。
答案 1 :(得分:1)
我使用脚本标记加载了matter.js库。你忘记了吗?
<script src="js/matter.min.js"></script>
我用
安装了这些打字npm install @types/matter-js
答案 2 :(得分:1)
您也可以
var Matter = require('matter-js');
或
import { Engine, World, Body, Bodies, Constraint } from 'matter-js';
@types/matter-js
缺少Common
类,但是也许您不应该使用它。如果确实需要,可以将其添加到包中的index.d.ts中,
export class Common {
static extend(obj:any, deep?:boolean): any;
static clone(obj:any, deep?:boolean): any;
static keys(obj:any): any;
static values(obj:any): any;
static get(obj:any, path:string, begin:number, end:number): any;
static set(obj:any, path:string, val:any, begin:number, end:number): any;
static shuffle(array:any[]): any;
static choose(choices:any[]): any;
static isElement(obj:any):boolean;
static isArray(obj:any):boolean;
static isFunction(obj:any):boolean;
static isPlainObject(obj:any):boolean;
static isString(obj:any):boolean;
static clamp(value:number, min:number, max:number):number;
static sign(value:number): number;
static now(): number;
static random(min?:number, max?:number): number;
static colorToNumber(colorString:string): number;
static log(...objs:any[]): void;
static info(...objs:any[]): void;
static warn(...objs:any[]): void;
}
答案 3 :(得分:0)
不幸的是,typescript lib似乎已经过时了。最后一次提交2年前。而应该是可选的参数在typescript定义中是必需的......