angular cli选项卡数据切换无法处理错误
我在客户端使用angular框架 我在项目中添加了一个新模块和一些组件,然后在页面上添加了两个选项卡,如下所示:angular cli选项卡数据切换无法处理错误,angular,angular-cli,Angular,Angular Cli,我在客户端使用angular框架 我在项目中添加了一个新模块和一些组件,然后在页面上添加了两个选项卡,如下所示: <ul class="nav nav-tabs in" id="tabs"> <li class="active"> <a data-toggle="tab" href="#number1"> <i class="fa fa-clock-o"></i>
<ul class="nav nav-tabs in" id="tabs">
<li class="active">
<a data-toggle="tab" href="#number1">
<i class="fa fa-clock-o"></i>
<span>tab 1</span>
</a>
</li>
<li>
<a data-toggle="tab" href="#number2">
<i class="fa fa-facebook"></i>
<span>tab 2</span>
</a>
</li>
</ul>
<div class="no-padding">
<div class="body">
<div id="myTabContent" class="tab-content">
<first-component class="tab-pane fade active in padding-10 no-padding-bottom" id="number1"></first-component>
<second-component class="tab-pane fade" id="number2"></second-component>
</div>
</div>
</div>
-
单击选项卡时,我发现以下错误:
ERROR Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'number1'
Error: Cannot match any routes. URL Segment: 'number1'
at ApplyRedirects.push../node_modules/@angular/router/fesm5/router.js.ApplyRedirects.noMatchError (router.js:2469)
at CatchSubscriber.selector (router.js:2450)
at CatchSubscriber.push../node_modules/rxjs/_esm5/internal/operators/catchError.js.CatchSubscriber.error (catchError.js:34)
at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._error (Subscriber.js:80)
at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.error (Subscriber.js:60)
at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._error (Subscriber.js:80)
at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.error (Subscriber.js:60)
at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._error (Subscriber.js:80)
at MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.error (Subscriber.js:60)
at TapSubscriber.push../node_modules/rxjs/_esm5/internal/operators/tap.js.TapSubscriber._error (tap.js:61)
at resolvePromise (zone.js:831)
at resolvePromise (zone.js:788)
at zone.js:892
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:423)
at Object.onInvokeTask (core.js:17280)
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:422)
at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:195)
at drainMicroTaskQueue (zone.js:601)
at push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask (zone.js:502)
at ZoneTask.invoke (zone.js:487)
window.console.error @ VM669:37
defaultErrorLogger @ core.js:15714
push../node_modules/@angular/core/fesm5/core.js.ErrorHandler.handleError @ core.js:15762
next @ core.js:17761
schedulerFn @ core.js:13504
push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.__tryOrUnsub @ Subscriber.js:196
push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next @ Subscriber.js:134
push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._next @ Subscriber.js:77
push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next @ Subscriber.js:54
push../node_modules/rxjs/_esm5/internal/Subject.js.Subject.next @ Subject.js:47
push../node_modules/@angular/core/fesm5/core.js.EventEmitter.emit @ core.js:13488
(anonymous) @ core.js:17311
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke @ zone.js:391
push../node_modules/zone.js/dist/zone.js.Zone.run @ zone.js:150
push../node_modules/@angular/core/fesm5/core.js.NgZone.runOutsideAngular @ core.js:17248
onHandleError @ core.js:17311
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.handleError @ zone.js:395
push../node_modules/zone.js/dist/zone.js.Zone.runGuarded @ zone.js:164
_loop_1 @ zone.js:694
api.microtaskDrainDone @ zone.js:703
drainMicroTaskQueue @ zone.js:608
push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask @ zone.js:502
ZoneTask.invoke @ zone.js:487
timer @ zone.js:2281
setTimeout (async)
scheduleTask @ zone.js:2302
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.scheduleTask @ zone.js:410
onScheduleTask @ zone.js:301
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.scheduleTask @ zone.js:404
push../node_modules/zone.js/dist/zone.js.Zone.scheduleTask @ zone.js:238
push../node_modules/zone.js/dist/zone.js.Zone.scheduleMacroTask @ zone.js:261
scheduleMacroTaskWithCurrentZone @ zone.js:1245
(anonymous) @ zone.js:2317
proto.(anonymous function) @ zone.js:1569
(anonymous) @ router.js:4064
schedulerFn @ core.js:13504
push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.__tryOrUnsub @ Subscriber.js:196
push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next @ Subscriber.js:134
push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._next @ Subscriber.js:77
push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next @ Subscriber.js:54
push../node_modules/rxjs/_esm5/internal/Subject.js.Subject.next @ Subject.js:47
push../node_modules/@angular/core/fesm5/core.js.EventEmitter.emit @ core.js:13488
(anonymous) @ common.js:151
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask @ zone.js:423
onInvokeTask @ core.js:17280
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask @ zone.js:422
push../node_modules/zone.js/dist/zone.js.Zone.runTask @ zone.js:195
push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask @ zone.js:498
invokeTask @ zone.js:1744
globalZoneAwareCallback @ zone.js:1770
zone.js:199 Uncaught TypeError: Converting circular structure to JSON
at JSON.stringify (<anonymous>)
at console.window.console.error (<anonymous>:39:101)
at defaultErrorLogger (core.js:15714)
at ErrorHandler.push../node_modules/@angular/core/fesm5/core.js.ErrorHandler.handleError (core.js:15762)
at Object.next (core.js:17761)
at SafeSubscriber.schedulerFn [as _next] (core.js:13504)
at SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.__tryOrUnsub (Subscriber.js:196)
at SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next (Subscriber.js:134)
at Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._next (Subscriber.js:77)
at Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next (Subscriber.js:54)
错误错误:未捕获(承诺中):错误:无法匹配任何路由。URL段:'number1'
错误:无法匹配任何路由。URL段:'number1'
在ApplyRedirects.push../node_modules/@angular/router/fesm5/router.js.ApplyRedirects.noMatchError(router.js:2469)
在CatchSubscriber.selector(router.js:2450)
在CatchSubscriber.push../node_modules/rxjs/_esm5/internal/operators/catchError.js.CatchSubscriber.error(catchError.js:34)
在MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.\u错误(Subscriber.js:80)
在MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.error(Subscriber.js:60)
在MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.\u错误(Subscriber.js:80)
在MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.error(Subscriber.js:60)
在MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.\u错误(Subscriber.js:80)
在MapSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.error(Subscriber.js:60)
在TapSubscriber.push../node_modules/rxjs/_esm5/internal/operators/tap.js.TapSubscriber.\u错误(tap.js:61)
在resolvePromise(zone.js:831)
在resolvePromise(zone.js:788)
在zone.js:892
在ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask(zone.js:423)
位于Object.onInvokeTask(core.js:17280)
在ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask(zone.js:422)
在Zone.push../node_modules/Zone.js/dist/Zone.js.Zone.runTask(Zone.js:195)
在drainMicroTaskQueue(zone.js:601)
在push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask(zone.js:502)处
在ZoneTask.invoke(zone.js:487)
window.console.error@VM669:37
defaultErrorLogger@core.js:15714
推送../node_modules/@angular/core/fesm5/core.js.ErrorHandler.handleError@core.js:15762
next@core.js:17761
schedulerFn@core.js:13504
推送../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.\uu tryoruunsubscriber@Subscriber.js:196
推送../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next@Subscriber.js:134
推送../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.\u next@Subscriber.js:77
推送../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next@Subscriber.js:54
推送../node_modules/rxjs/_esm5/internal/Subject.js.Subject.next@Subject.js:47
推送../node_modules/@angular/core/fesm5/core.js.EventEmitter.emit@core.js:13488
(匿名)@core.js:17311
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke@zone.js:391
推送../node_模块/zone.js/dist/zone.js.zone.run@zone.js:150
push../node_modules/@angular/core/fesm5/core.js.NgZone.runOutsideAngular@core.js:17248
onHandleError@core.js:17311
推送../node_modules/zone.js/dist/zone.js.ZoneDelegate.handleError@zone.js:395
push../node_modules/zone.js/dist/zone.js.zone.runguared@zone.js:164
_loop_1@zone.js:694
api.microtaskDrainDone@zone.js:703
drainMicroTaskQueue@zone.js:608
push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask@zone.js:502
ZoneTask.invoke@zone.js:487
timer@zone.js:2281
设置超时(异步)
scheduleTask@zone.js:2302
推送../node_modules/zone.js/dist/zone.js.ZoneDelegate.scheduleTask@zone.js:410
onScheduleTask@zone.js:301
推送../node_modules/zone.js/dist/zone.js.ZoneDelegate.scheduleTask@zone.js:404
推送../node_modules/zone.js/dist/zone.js.zone.scheduleTask@zone.js:238
push../node_modules/zone.js/dist/zone.js.zone.scheduleMocrotask@zone.js:261
ScheduleMarocTaskWithCurrentZone@zone.js:1245
(匿名)@zone.js:2317
proto.(匿名函数)@zone.js:1569
(匿名)@router.js:4064
schedulerFn@core.js:13504
推送../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.\uu tryoruunsubscriber@Subscriber.js:196
推送../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next@Subscriber.js:134
推送../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.\u next@Subscriber.js:77
推送../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next@Subscriber.js:54
推送../node_modules/rxjs/_esm5/internal/Subject.js.Subject.next@Subject.js:47
推送../node_modules/@angular/core/fesm5/core.js.EventEmitter.emit@core.js:13488
(匿名)@common.js:151
推送../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask@zone.js:423
onInvokeTask@core.js:17280
推送../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask@zone.js:422
push../node_modules/zone.js/dist/zone.js.zone.runTask@zone.js:195
push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask@zone.js:498
invokeTask@zone.js:1744
globalZoneAwareCallback@zone.js:1770
zone.js:199未捕获类型错误:将循环结构转换为JSON
在JSON.stringify()上
在console.window.console.error(:39:101)
默认错误记录器(core.js:15714)
在ErrorHandler.push../node_modules/@angular/core/fesm5/core.js.ErrorHandler.handleError(core.js:15762)
在Object.next(core.js:17761)
SafeSubscriber.schedulerFn[as_next](core.js:13504)
在SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.\uu tryOrUnsub(Subscriber.js:196)
在SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next(Subscriber.js:134)
在Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.\u next(Subscriber.js:77)
在Subscriber.push../node_modules/rxjs/_esm5/internal/Subscrib
<a [routerLink]="['/basecomp/tabname1']>Tab1 Link</a>
<a [routerLink]="['/basecomp/tabname1']>Tab2 Link</a>
appRoutes: Routes = [
{
path: "baseComp", component, CompoenntThatHasTabPage,
children: [
{ path: '', component: Tab1Component },
{ path: 'tabname1', component: Tab1Component },
{ path: 'tabname1', component: Tab2Component }
]
}
];