Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何防止在布线中的角度2中重新加载父组件?_Javascript_Angularjs_Angular Ui Router_Angular2 Routing - Fatal编程技术网

Javascript 如何防止在布线中的角度2中重新加载父组件?

Javascript 如何防止在布线中的角度2中重新加载父组件?,javascript,angularjs,angular-ui-router,angular2-routing,Javascript,Angularjs,Angular Ui Router,Angular2 Routing,在我的项目中,我使用父组件。在父组件模板上可用 路由文件: app.routing.ts: import { Routes, RouterModule } from '@angular/router'; import { LoginComponent } from './login/login.component'; import { CanDeactivateGuard } from './can-deactivate-guard.service'; export const appRout

在我的项目中,我使用父组件。在父组件模板上可用

路由文件:

app.routing.ts:

import { Routes, RouterModule } from '@angular/router';
import { LoginComponent } from './login/login.component';
import { CanDeactivateGuard } from './can-deactivate-guard.service';

export const appRoutes: Routes = [{ 
    path: 'login', 
    component: LoginComponent
}, {
    path: '',
    redirectTo: '/home',
    pathMatch: 'full'
}, {
    path: 'home',
    loadChildren: 'app/app/home/home.module#HomeModule'
}];
export const appRoutingProviders: any[] = [
    CanDeactivateGuard
];
export const routing = RouterModule.forRoot(appRoutes);
import { Routes, RouterModule }  from '@angular/router';
import { GLComponent } from './gl/gl.component';
import { ReportComponent } from './report/report.component';
import { HomeComponent } from './home.component';
import { HomeCommonComponent } from './home-common.component';

const homeRoutes: Routes = [{
    path: '',
    component: HomeComponent,
    children: [{
        path: 'report',
        component: ReportComponent
    }, {
        path: '',
        component: HomeCommonComponent
    }, {
        path: 'gl',
        loadChildren: 'app/app/home/gl/gl.module#GLModule'
    }]
}];
export const homeRouting = RouterModule.forChild(homeRoutes);
import { Routes, RouterModule } from '@angular/router';
import { GLComponent } from './gl.component';
import { TransactionComponent } from './transaction/transaction.component';
import { GLCommonComponent } from './gl-common.component';

const glRoutes: Routes = [{
    path: '',
    component: GLComponent,
    children: [{
        path: 'transaction',
        component: TransactionComponent,
    }, {
        path: '',
        component: GLCommonComponent
    }
]}];
export const glRouting = RouterModule.forChild(glRoutes);
home.routing.ts:

import { Routes, RouterModule } from '@angular/router';
import { LoginComponent } from './login/login.component';
import { CanDeactivateGuard } from './can-deactivate-guard.service';

export const appRoutes: Routes = [{ 
    path: 'login', 
    component: LoginComponent
}, {
    path: '',
    redirectTo: '/home',
    pathMatch: 'full'
}, {
    path: 'home',
    loadChildren: 'app/app/home/home.module#HomeModule'
}];
export const appRoutingProviders: any[] = [
    CanDeactivateGuard
];
export const routing = RouterModule.forRoot(appRoutes);
import { Routes, RouterModule }  from '@angular/router';
import { GLComponent } from './gl/gl.component';
import { ReportComponent } from './report/report.component';
import { HomeComponent } from './home.component';
import { HomeCommonComponent } from './home-common.component';

const homeRoutes: Routes = [{
    path: '',
    component: HomeComponent,
    children: [{
        path: 'report',
        component: ReportComponent
    }, {
        path: '',
        component: HomeCommonComponent
    }, {
        path: 'gl',
        loadChildren: 'app/app/home/gl/gl.module#GLModule'
    }]
}];
export const homeRouting = RouterModule.forChild(homeRoutes);
import { Routes, RouterModule } from '@angular/router';
import { GLComponent } from './gl.component';
import { TransactionComponent } from './transaction/transaction.component';
import { GLCommonComponent } from './gl-common.component';

const glRoutes: Routes = [{
    path: '',
    component: GLComponent,
    children: [{
        path: 'transaction',
        component: TransactionComponent,
    }, {
        path: '',
        component: GLCommonComponent
    }
]}];
export const glRouting = RouterModule.forChild(glRoutes);
gl.routing.ts:

import { Routes, RouterModule } from '@angular/router';
import { LoginComponent } from './login/login.component';
import { CanDeactivateGuard } from './can-deactivate-guard.service';

export const appRoutes: Routes = [{ 
    path: 'login', 
    component: LoginComponent
}, {
    path: '',
    redirectTo: '/home',
    pathMatch: 'full'
}, {
    path: 'home',
    loadChildren: 'app/app/home/home.module#HomeModule'
}];
export const appRoutingProviders: any[] = [
    CanDeactivateGuard
];
export const routing = RouterModule.forRoot(appRoutes);
import { Routes, RouterModule }  from '@angular/router';
import { GLComponent } from './gl/gl.component';
import { ReportComponent } from './report/report.component';
import { HomeComponent } from './home.component';
import { HomeCommonComponent } from './home-common.component';

const homeRoutes: Routes = [{
    path: '',
    component: HomeComponent,
    children: [{
        path: 'report',
        component: ReportComponent
    }, {
        path: '',
        component: HomeCommonComponent
    }, {
        path: 'gl',
        loadChildren: 'app/app/home/gl/gl.module#GLModule'
    }]
}];
export const homeRouting = RouterModule.forChild(homeRoutes);
import { Routes, RouterModule } from '@angular/router';
import { GLComponent } from './gl.component';
import { TransactionComponent } from './transaction/transaction.component';
import { GLCommonComponent } from './gl-common.component';

const glRoutes: Routes = [{
    path: '',
    component: GLComponent,
    children: [{
        path: 'transaction',
        component: TransactionComponent,
    }, {
        path: '',
        component: GLCommonComponent
    }
]}];
export const glRouting = RouterModule.forChild(glRoutes);
…和Angular的版本:

"@angular/common": "2.0.0-rc.5",
"@angular/compiler": "2.0.0-rc.5",
"@angular/core": "2.0.0-rc.5",
"@angular/forms": "0.3.0",
"@angular/http": "2.0.0-rc.5",
"@angular/platform-browser": "2.0.0-rc.5",
"@angular/platform-browser-dynamic": "2.0.0-rc.5",
"@angular/router": "3.0.0-rc.1",
"@angular/router-deprecated": "2.0.0-rc.2",
"@angular/upgrade": "2.0.0-rc.5"
问题:当我停留在
/home
并尝试重新定位到
/home/report
=>
home.component
并重新加载所有ajax请求时。如果
report.component
作为
home.component
的子组件可用,我将暂停,并尝试重新定位到另一个
home.component
child=>
home.component
不应重新加载。我在这方面没有舒尔产品