Angulartics2 с несколькими провайдерами?

Использование Angulartics2 для Google Analytics и Piwik ( matomo). Если я использую только одного провайдера, он отлично работает, но с синтаксической проблемой при попытке использовать оба. В app.module.ts....

import {Angulartics2Module, Angulartics2GoogleAnalytics, Angulartics2Piwik} from 'angulartics2';

... и позже для использования в модуле:

@NgModule({
imports: [
    BrowserModule,
    AppRoutingModule,
    LayoutModule,
    StaticModule,
    Angulartics2Module.forRoot([ Angulartics2GoogleAnalytics, Angulartics2Piwik ]),
    MetaModule.forRoot(metaConfig)
],
declarations: [
    App
],
bootstrap: [ App ],
providers: [ ENV_PROVIDERS, APP_PROVIDERS ],
schemas: [ CUSTOM_ELEMENTS_SCHEMA ]
....

В app.routes.ts вот основной код:

import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { NoContent } from './no-content';
import { Angulartics2GoogleAnalytics } from 'angulartics2';
import { Angulartics2Piwik } from "angulartics2";

import { DataResolver } from './app.resolver';

export const ROUTES: Routes = [
{ path: '', loadChildren: () => System.import('./home/home.module').then(mod => mod.HomeModule), pathMatch: 'full' },
{ ...other paths... },
{ path: '**', component: NoContent }
];

@NgModule({
imports: [RouterModule.forRoot(ROUTES)],
exports: [RouterModule]
})

export class AppRoutingModule
{
//  constructor(angulartics2GoogleAnalytics:       Angulartics2GoogleAnalytics) {}
constructor(angulartics2Piwik: Angulartics2Piwik) {}
}

Я получаю "множественные конструкторы не допускаются", если я раскомментирую оба конструктора в классе экспорта AppRoutingModule...

Я хочу убедиться, что я использую оба провайдера, но не могу понять, как получить оба в экспорте.

Заранее спасибо.

1 ответ

Удалите конструктор из app.routing.module.ts, который не нужен,

constructor(angulartics2Piwik: Angulartics2Piwik) { //remove this
}
Другие вопросы по тегам