Angular 清理此组件时出错。\u app.unregisterRootNav不是NavControllerBase.destroy上的函数
我正在使用Karma jasmine测试一个页面,使用3个选项卡 当开始第二个测试用例时,出现错误。 如果我只写一个测试用例,就不会有错误 我遵循了这个答案,但没有帮助: 请帮忙 “@angular/core”:“5.2.11” “@ionic native/core”:“^4.12.2” “因果报应茉莉”:“^1.1.2”Angular 清理此组件时出错。\u app.unregisterRootNav不是NavControllerBase.destroy上的函数,angular,ionic-framework,karma-jasmine,Angular,Ionic Framework,Karma Jasmine,我正在使用Karma jasmine测试一个页面,使用3个选项卡 当开始第二个测试用例时,出现错误。 如果我只写一个测试用例,就不会有错误 我遵循了这个答案,但没有帮助: 请帮忙 “@angular/core”:“5.2.11” “@ionic native/core”:“^4.12.2” “因果报应茉莉”:“^1.1.2” ERROR:[36m'清理组件时出错',对象{component:TabsPage{appCtrl:AppMock{},平台:PlatformMock{resume:…}
ERROR:[36m'清理组件时出错',对象{component:TabsPage{appCtrl:AppMock{},平台:PlatformMock{resume:…},firebase:FirebaseMock{},translate:TranslateService{store:…、currentLoader:…、编译器:…、解析器:…、missingTranslationHandler:…、useDefaultLang:…、isolate:…、pending:…、onTranslationChange:…、onLangChange:…、onDefaultLangChange:…、langs:…、translationRequests:…、dataService:DataServiceProvider{toParentData Source:…,toChildDataSource:…,toParentData$:…,toChildData$:…},common:CommonProviderLock{},navCtrl:NavMock{},rest:RestProviderLock{},TokenProviderLock{},tab1Root:function DrawalPage(navCtrl,common,rest,token,firebase,platform,loadingCtrl){…,tab2Root:function TransactionPage(appCtrl,平台,公共,令牌,数据服务,rest,navCtrl){…},tab3Root:function AccountPage(appCtrl,平台,translate,firebase,公共,令牌,数据服务){…},resumeSub:Subscriber{closed:…,_parent:…,_parents:…,_subscriptions:…,syncErrorValue:…,SyncErrorSwitch:…,syncErrorThrowable:…,isStopped:…,destination:…},dataServiceSub:Subscriber{closed:…,_parent:…,_parents:…,_subscriptions:…,syncErrorValue:…,SyncErrorSwitch:…,syncErrorThrowable:…,isStopped:…,destination:…},firebaseSub:Subscriber{closed:…,_parent:…,_parents:…,_subscriptions:…,syncErrorValue:…,SyncErrorSwitch:…,syncErrorThrowable:…,isStopped:…,destination:…},重试:0,选项卡:选项卡{u config:…,\u elementRef:…,\u renderer:…,\u component name:…,\u mode:…,viewCtrl:…,\u app:…,\u plt:…,\u linker:…,\u id:…,\u tabs:…,\u selectHistory:…,\u onstroy:…,ionChange:…,parent:…,id:,\u sbPadding:…,tabsHighlight:…,\u highlight:,\u highlight:,\u tabbar:…,portal:…}:,stacktrace:TypeError:this.\u app.unregisterRootNav不是函数
TypeError:此.\u app.unregisterRootNav不是函数
在Tab.NavControllerBase.destroy处(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:75720:23)
在Tab.Ngondestory(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:134069:14)
在callProviderLifecycles(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:13044:18)
在callElementProvidersLifecycles(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:13005:13)
在callLifecycleHooksChildrenFirst(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:12988:29)
俯瞰(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14354:5)
在callViewAction(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14505:13)
在执行组件视图操作时(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14417:13)
俯瞰(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14353:5)
在callWithDebugContext(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:15388:42)
在Object.debugDestroyView[作为destroyView](http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14939:12)
在ViewRef.销毁(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:11958:18)
在ComponentRef.销毁(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:11622:33)
在ComponentFixture.destroy(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:29477:31)
在http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:30082:25
在Array.forEach()处
在TestBed.resetTestingModule(http://localhost:9876/base/test-配置/卡玛测试垫片.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:30080:30)
位于Function.TestBed.resetTestingModule
添加此代码
unregisterRootNav() {
//do nothing
return
}
对AppMock进行分类
ERROR: [36m'Error during cleanup of component', Object{component: TabsPage{appCtrl: AppMock{}, platform: PlatformMock{resume: ...}, firebase: FirebaseMock{}, translate: TranslateService{store: ..., currentLoader: ..., compiler: ..., parser: ..., missingTranslationHandler: ..., useDefaultLang: ..., isolate: ..., pending: ..., _onTranslationChange: ..., _onLangChange: ..., _onDefaultLangChange: ..., _langs: ..., _translations: ..., _translationRequests: ...}, dataService: DataServiceProvider{toParentDataSource: ..., toChildDataSource: ..., toParentData$: ..., toChildData$: ...}, common: CommonProviderMock{}, navCtrl: NavMock{}, rest: RestProviderMock{}, token: TokenProviderMock{}, tab1Root: function WithdrawalPage(navCtrl,common,rest,token,firebase,platform,loadingCtrl){ ... }, tab2Root: function TransactionsPage(appCtrl,platform,common,token,dataService,rest,navCtrl){ ... }, tab3Root: function AccountPage(appCtrl,platform,translate,firebase,common,token,dataService){ ... }, resumeSub: Subscriber{closed: ..., _parent: ..., _parents: ..., _subscriptions: ..., syncErrorValue: ..., syncErrorThrown: ..., syncErrorThrowable: ..., isStopped: ..., destination: ...}, dataServiceSub: Subscriber{closed: ..., _parent: ..., _parents: ..., _subscriptions: ..., syncErrorValue: ..., syncErrorThrown: ..., syncErrorThrowable: ..., isStopped: ..., destination: ...}, firebaseSub: Subscriber{closed: ..., _parent: ..., _parents: ..., _subscriptions: ..., syncErrorValue: ..., syncErrorThrown: ..., syncErrorThrowable: ..., isStopped: ..., destination: ...}, retry: 0, tabs: Tabs{_config: ..., _elementRef: ..., _renderer: ..., _componentName: ..., _mode: ..., viewCtrl: ..., _app: ..., _plt: ..., _linker: ..., _ids: ..., _tabs: ..., _selectHistory: ..., _onDestroy: ..., ionChange: ..., parent: ..., id: ..., _sbPadding: ..., tabsHighlight: ..., _highlight: ..., _tabbar: ..., portal: ...}}, stacktrace: TypeError: this._app.unregisterRootNav is not a function
TypeError: this._app.unregisterRootNav is not a function
at Tab.NavControllerBase.destroy (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:75720:23)
at Tab.ngOnDestroy (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:134069:14)
at callProviderLifecycles (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:13044:18)
at callElementProvidersLifecycles (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:13005:13)
at callLifecycleHooksChildrenFirst (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:12988:29)
at destroyView (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14354:5)
at callViewAction (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14505:13)
at execComponentViewsAction (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14417:13)
at destroyView (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14353:5)
at callWithDebugContext (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:15388:42)
at Object.debugDestroyView [as destroyView] (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:14939:12)
at ViewRef_.destroy (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:11958:18)
at ComponentRef_.destroy (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:11622:33)
at ComponentFixture.destroy (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:29477:31)
at http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:30082:25
at Array.forEach (<anonymous>)
at TestBed.resetTestingModule (http://localhost:9876/base/test-config/karma-test-shim.js?a671f4c732cb1052c04ccc37ff945c825f9983dc:30080:30)
at Function.TestBed.resetTestingModule
unregisterRootNav() {
//do nothing
return
}