簡體   English   中英

Angular2:例外:沒有 Angulartics2GoogleAnalytics 的提供者

[英]Angular2 : EXCEPTION: No provider for Angulartics2GoogleAnalytics

我正在嘗試在我的應用程序中使用angulartics2

我已按照文檔中提到的正確配置。

注意:沒有提到將提供程序添加為依賴項的地方。

當我嘗試運行該應用程序時,它顯示如下錯誤。

例外:沒有 Angulartics2GoogleAnalytics 的提供者! 錯誤: NoProviderError.ZoneAwareError (zone.js:811) at NoProviderError.BaseError [as constructor] (core.umd.js:1186) at NoProviderError.AbstractProviderError [as constructor] (core.umd.js:1371) 處的DI錯誤ReflectiveInjector_ 上的新 NoProviderError (core.umd.js:1411)。 throwOrNull (core.umd.js:3394) 在 ReflectiveInjector getByKeyDefault (core.umd.js:3433) 在 ReflectiveInjector getByKey (core.umd.js:3380) at ReflectiveInjector .get (core.umd.js:3140) at AppModuleInjector.NgModuleInjector.get (core.umd.js:8996) at CompiledTemplate.proxyViewClass.AppView.injectorGet (core.umd) .js:12465) at CompiledTemplate.proxyViewClass.DebugAppView.injectorGet (core.umd.js:12845) at CompiledTemplate.proxyViewClass.View_AppComponent_Host0.createInternal (/AppModule/AppComponent/host.ngfactory.js:15) at CompiledTemplate.AppComponent.proxyView .createHostView (core.umd.js:12421) at CompiledTemplate.proxyViewClass.DebugAppView.createHostView (core.umd.js:12829) at ComponentFactory.create (core.umd.js:7766) 1 : https://github.com /angulartics/angulartics2

App.component.ts

import { Component } from '@angular/core';
import { Angulartics2GoogleAnalytics } from 'angulartics2';
@Component({
  selector: 'my-app',
  moduleId: module.id,
  templateUrl: `./app.component.html`,
  styleUrls: ['/app.componenet.css']
})
export class AppComponent {
title = 'Angular2 google analytics';
constructor(angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics) {}
}

app.module.ts

import { NgModule }      from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent }  from './app.component';
import { HttpModule } from '@angular/http';
import { FormsModule }   from '@angular/forms';
import { Angulartics2Module, Angulartics2GoogleAnalytics } from 'angulartics2';
@NgModule({
  imports:      [ HttpModule, BrowserModule, FormsModule, Angulartics2Module.forRoot([ Angulartics2GoogleAnalytics ])],
  declarations: [ AppComponent ],
  bootstrap:    [ AppComponent ],
})
export class AppModule { }

使用providers程序在組件中啟動您的提供程序。

 @Component({
    selector: 'yourselector',
    styleUrls: [''],
    templateUrl: '',
    providers: [Angulartics2GoogleAnalytics]
})

嘗試這個。

您的問題應該存在於您的構造函數中:

constructor(angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics) {}

你應該在你的提供者前面添加例如public

constructor(public angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics) {}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM