Ошибка установки Raygun версии 6 в Angular
Ошибка установки Raygun версии 6 в Angular
Ошибка:
ОШИБКА в src/app/app.raygun.setup.ts(6,20): ошибка TS2304: не удается найти имя 'RaygunV2'.
Кажется, эта строка не нравится: объявлять let rg4js: RaygunV2;
Я установил эти npms для raygun:
@ types / raygun4js: "^ 2.6.0 AND raygun4j": "^ 2.10.0
Файл app.raygun.setup:
import * as rg4js from 'raygun4js';
import { ErrorHandler } from '@angular/core';
import { environment } from '@env/environment';
declare let rg4js: RaygunV2;
rg4js('apiKey', '9bimuASis2Cyjx/mrKTmeQ==');
rg4js('setVersion', '1.0.0.0');
rg4js('enableCrashReporting', environment.raygun.isActive);
export class RaygunErrorHandler implements ErrorHandler {
handleError(e: any) {
rg4js('send', { error: e });
}
}
app.module:
providers: [
{ provide: ErrorHandler, useClass: RaygunErrorHandler }
],
1 ответ
Это потому, что из-за недосмотра мы не экспортируем RaygunV2
объект как часть определения типа. Это будет исправлено в следующей версии Raygun4JS (без ETA). На данный момент лучшее, что вы можете сделать, это просто объявить переменную как any
,
Sidenote: я не вижу, что вы пытаетесь импортировать RaygunV2
type, вам придется сделать это, когда мы в конце концов экспортируем тип из определений типов.
Редактировать (25/10/18): Это все еще не решено должным образом, но вы можете использовать следующий фрагмент в качестве обходного пути
import { RaygunV2 } from 'raygun4js';
const rgj4s: RaygunV2 = require('raygun4js');