角度路由禁用javascript函数

时间:2018-01-26 11:33:33

标签: javascript angular routing

我有一个简单的角度路由模块,如下所示:

import { NgModule, ModuleWithProviders } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { HomeComponent } from './../../home/home.component';
import { LoginComponent } from './../../login/login.component';

const routes: Routes = [
  {
    path: '',
    component: HomeComponent
  },
  {
    path: 'login',
    component: LoginComponent
  }
];

@NgModule({
  imports: [RouterModule.forRoot(routes)],
  exports: [RouterModule]
})
export class AppRoutingModule { }

每当我打开页面时,HomeComponent都会被加载。一切正常,直到我切换到登录页面。它们都有一些与javascript一起使用的部分。我在.angular-cli.json文件中添加了那些。

如果我使用以下按钮切换到登录页面:

<li class="active"><a routerLink="">Home</a></li>

这些功能似乎都不起作用,每当我切换回主页组件时,之前工作的功能也不会在这里工作。

到目前为止,我发现脚本加载一次,因为主应用程序是使用“eager loading”加载的,而compontens使用“延迟加载”。

有没有办法再次加载脚本或任何其他方法来解决这个问题?

1 个答案:

答案 0 :(得分:0)

我设法通过使用下一页中给出的解决方案来解决问题:

how to load js on component level in angular 4. I don't want to load all js file at app startup

由米拉德提供。