如何导入此javascript库?

ryevplcw  于 2021-09-23  发布在  Java
关注(0)|答案(2)|浏览(263)

我下载了 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的东西。请问我做错了什么?

t1rydlwq

t1rydlwq1#

您应该尝试用这种方式将其导入到js中。
如果您正在使用 node js :

var easystarjs = require('easystarjs');
var easystar = new easystarjs.js();
wlzqhblo

wlzqhblo2#

首先,我99.99%确定,这段代码是typescript,不是javascript。纯类型脚本代码在浏览器中不起作用,在此之前必须编译成纯javascript。如果打开开发工具,您可能会看到一些 SyntaxError S
然后,还有库和文件的名称,你在这个问题上有点模棱两可。二者都 easystar , easystar.js 以及 easystarjs 可以是三个独立的库,彼此完全独立。
最后(假设上述所有问题都已解决),导入实体并不意味着将其置于 window 对象,您仍然必须明确地说 window.something = something .

相关问题