我想在我的angular(cli)2 app中使用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 { // }
有了这个,我可以使用三个功能,没有任何问题.
我想使用node_modules / three / examples / js /中的一些例子,更准确地说是OrbitControl.这些打包给了我visual studio代码中的自动完成功能:
但是一旦我尝试使用它,我有以下错误:
TypeError: WEBPACK_IMPORTED_MODULE_1_three.OrbitControls is not a
constructor
有没有办法通过一些导入提供OrbitControls(和其他例子)?
我应该只在我的HTML中包含control.js吗?
处理这个问题的最佳方法是什么?
尝试使用替代包
https://www.npmjs.com/package/three-orbitcontrols-ts
https://www.npmjs.com/package/three-orbitcontrols-ts
1.安装包
npm install --save three-orbitcontrols-ts
2.在您的文件中使用
import * as THREE from 'three'; import { OrbitControls } from 'three-orbitcontrols-ts'; const controls = new OrbitControls(camera,renderer.domElement);