如何正确导入三个js库?

How to properly import THREE js library?

我通过 npm 安装了 three 库。在 node_modules 目录中有 three 文件夹。但是当我想使用以下方式导入它时:

import * as THREE from 'three';

它给出了以下错误:

ReferenceError: regeneratorRuntime is not defined

但是当我使用时;

import * as THREE from 'three/build/three.cjs';

它正常工作。另外,导入外部插件时也会出现同样的问题:

import { OrbitControls } from "three/examples/jsm/controls/OrbitControls.js";

我该如何解决这个问题?

Three.js 使用 ES6 async/await,您需要升级或配置您的 babel 预设以支持 async/await。 这可能有帮助

确保引用 three.module 所在的正确路径。 对于 rootForlder/src/theScriptWhereYourImportIs.js 中的脚本,我会尝试以下操作:

import * as THREE from '../node_modules/three/build/three.module.js';

如果脚本与您的 node_modules 文件夹处于同一层级,则以下内容应该有效:

import * as THREE from './node_modules/three/build/three.module.js';

据我所知,我必须进行一些试验并弄清楚这一点,因为它在文档中不是很清楚。欢迎任何见解。