我下载了 easystar.js
与npm合作。
其代码如下所示:
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的东西。请问我做错了什么?
2条答案
按热度按时间t1rydlwq1#
您应该尝试用这种方式将其导入到js中。
如果您正在使用
node js
:wlzqhblo2#
首先,我99.99%确定,这段代码是typescript,不是javascript。纯类型脚本代码在浏览器中不起作用,在此之前必须编译成纯javascript。如果打开开发工具,您可能会看到一些
SyntaxError
S然后,还有库和文件的名称,你在这个问题上有点模棱两可。二者都
easystar
,easystar.js
以及easystarjs
可以是三个独立的库,彼此完全独立。最后(假设上述所有问题都已解决),导入实体并不意味着将其置于
window
对象,您仍然必须明确地说window.something = something
.