I have a project created with angular-cli
where I have installed aframe
via npm install aframe --save
, and when I try to import it in the component via import 'aframe';
it causes the following error:
Failed to execute
registerElement
onDocument
: Registration failed for typea-node
. A type with that name is already registered.
In this case, the only way to make it work is by importing the library in the <head>
tag of the index.html
file. Instead I would like to access aframe
object3D to modify objects entities, as shown here:
AFRAME.registerComponent('foo', {
init: function () {
// Do something
}
});
but unluckily I am not able to make it work. Do you have an idea on how to solve this issue? Thanks in advance for your replies!
Here is what you have to get it properly working in Angular2:
- Edit your angular-cli.json and add the path to the scripts node:
"scripts": [
"node_modules/aframe/dist/aframe-master.js"
],
Download the typings from https://github.com/devpaul/aframe-typings/blob/master/src/AFRAME.d.ts.
Reference the typings in your component with:
/// <reference path="../typings/AFRAME.d.ts" />
or install the typings globally in your tsconfig.json:
"files": [
"typings/AFRAME.d.ts"
]
来源:https://stackoverflow.com/questions/42163088/cant-import-a-frame-into-component-angular2