【发布时间】:2019-07-09 20:47:13
【问题描述】:
我正在尝试在我的 angular (cli) 2 应用程序中使用 threejs 示例。
所以我已经安装了threejs:
npm install three --save
然后添加类型:
npm install @types/three --save-dev
最后我的组件看起来像这样:
import { Component, OnInit } from '@angular/core';
import * as THREE from 'three';
@Component({
selector: 'app-testthreejs',
templateUrl: './testthreejs.component.html',
styleUrls: ['./testthreejs.component.css']
})
export class TestthreejsComponent implements OnInit {
//
}
有了这个,我可以毫无问题地使用 THREE 中的一些功能。
我想使用 node_modules/three/examples/js/ 中的一些示例,更准确地说是 OrbitControl。打字给了我视觉工作室代码中的自动完成功能:
但是当我尝试使用它时,我有以下错误:
TypeError: WEBPACK_IMPORTED_MODULE_1_three.OrbitControls 不是 构造函数
有没有办法通过一些导入来提供可用的 OrbitControls(和其他示例)? 我应该在我的 html 中简单地包含 control.js 吗?
解决这个问题的最佳方法是什么?
【问题讨论】:
-
IMO、Grunt(或其他)您自己的 three.min.js 文件,其中包含您需要的额外功能,例如控件、obj 文件加载或诸如此类的东西,而不是 NPM 安装。您可以在脚本标签中包含额外/帮助程序,但这是维护的噩梦。做对你的项目有意义的事情,没有文档或特定的方法可以向 three.js 添加额外的和帮助程序。
标签: angular three.js angular-cli