我在将this库导入Angular2 / Ionic项目时遇到问题。它是一个库,可以对原始加速度计数据进行一些计算。这个例子表明我需要做一个require('ahrs')
,我试图在打字稿中做。在过去,我需要做的就是将js文件复制到一个可以访问的目录并为其声明一个变量。这种方法对其他库很有用,但这里有错误。这是我做的:
步骤1:通过自定义copy.config
将JS文件复制到我的项目构建目录copyAHRS: {
src: './external/www-ahrs.js',
dest: '{{BUILD}}'
},
这很好 - 我可以在我的构建中看到www-ahrs.js
第2步:将文件包含在index.html
<script src="build/www-ahrs.js"></script>
这也很好。
第3步:尝试在我的代码中使用它(在组件中)。此代码直接来自AHRS库readme。这个错误。
declare var ahrs:any;
try {
madgwick = new ahrs({
sampleInterval: 20,
algorithm: 'Madgwick',
beta: 0.4,
kp: 0.5,
ki: 0
});
}
catch (e) {
console.log ("MADGWICK ERROR " + JSON.stringify(e))
}
答案 0 :(得分:1)
您需要使用npm进行安装,然后在*ts
文件的顶部声明它。以下是使用lodash
:
import {Component, OnInit} from '@angular/core';
import {Router} from '@angular/router';
const _ = require('lodash');
@Component({
selector: 'my-component',
templateUrl: './my-component.component.html',
styleUrls: ['./my-component.component.scss']
})
你的
const ahrs = require('ahrs');