[英]How to import this javascript library?
我用 npm 下载了easystar.js
。
它的代码如下所示:
export const TOP: 'TOP'
export const TOP_RIGHT: 'TOP_RIGHT'
export const RIGHT: 'RIGHT'
export const BOTTOM_RIGHT: 'BOTTOM_RIGHT'
export const BOTTOM: 'BOTTOM'
export const BOTTOM_LEFT: 'BOTTOM_LEFT'
export const LEFT: 'LEFT'
export const TOP_LEFT: 'TOP_LEFT'
type Direction = 'TOP' | 'TOP_RIGHT' | 'RIGHT' | 'BOTTOM_RIGHT' | 'BOTTOM' | 'BOTTOM_LEFT' | 'LEFT' | 'TOP_LEFT'
export class js {
/**
* Sets the collision grid that EasyStar uses.
*
* @param {Array|Number} tiles An array of numbers that represent
* which tiles in your grid should be considered
* acceptable, or "walkable".
*/
setAcceptableTiles(tiles: number[] | number): void
.
.
.
removeAllDirectionalConditions(): void
}
我试过以所有这些方式导入:
import * as easystar from 'easystarjs';
import 'easystarjs';
import {js} from 'easystarjs';
但是如果我在窗口对象中放置了一个断点,我就看不到任何名为 easystar 或 js 的东西。 请问我做错了什么?
您应该尝试这种方式将其导入到您的 js 中。
如果您使用node js
:
var easystarjs = require('easystarjs');
var easystar = new easystarjs.js();
首先,我 99.99% 肯定,这段代码是 TypeScript,而不是 JavaScript。 纯 TypeScript 代码在浏览器中不起作用,必须在此之前将其编译为纯 JavaScript。 如果您打开 Dev Tools,您可能会看到一些SyntaxError
。
然后,还有库和文件的名称——你在这方面非常含糊。 easystar
、 easystar.js
以及easystarjs
都可以是三个独立的库,彼此完全独立。
= 最后(假设上述所有问题都已解决),导入实体并不意味着将其放在window
对象上, - 您仍然必须明确地说window. =
= . window. =
。
如果你在 nodejs 中制作"type": "module"
那么这是有效的:
import easystarjs from 'easystarjs'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.