2016-10-01 47 views
0

我是agnular2中的新成员。我用html5主题和主题有多个javascript文件。现在的问题是我试图加载我的angular2应用程序中的文件,但它没有正确加载。Angular2问题来加载外部javascripts

我所做的只是将脚本链接到我的index.html文件,并且第一次打开页面时脚本运行良好,但是当我在我的应用程序中路由页面时,它不会加载到应用程序中每个路由器都需要刷新页面。

请帮忙.. !!!

+0

如果你们没有知识,那么至少请不要放弃投票...这对其他人也有帮助。 –

+0

对不起,但我没有放弃投票。 – yurzui

+0

对不起,我没有指出你..这是对选民下来 –

回答

0

这是因为你的JS文件是在组件生成之前加载的。尝试这样的: 在你的js文件中使用构造函数fn。 /**/ app.js

function callSomething(){ 
    console.log('something has been called.'); 
} 

/*在component.ts */

declare var callSomething: any; //declare this at top; 

现在你可以调用它的任何方法中: 新callSomething();

+0

谢谢,但不工作.. !!! –

+0

以上soln。为我工作。你在使用ng-cli吗? – Manish

+0

不,我正在使用npm启动并运行构建来运行我的应用程序 –

0

我认为你需要初始化它在你的view.I做了这样的事情:

在app.js(我已经包含在我的index.html)

function scrollToId(id){ 
    //scroll fn 
} 

在我查看/ Component 从'@ angular/core'导入{Component,OnInit};

declare var scrollToId: any; 
@Component({}) 
export class UserDetailsComponent implements OnInit { 
    constructor(){} 
    ngOnInit() { 
    new scrollToId('registration-form'); 
    } 
} 

&它工作正常。

+0

我认为你对我的问题不清楚 –

+0

我必须在我的angular2应用程序中使用主题javascript文件。它不是任何特定的功能 –

+0

唯一我想指出的是,你需要在视图上触发该功能。按照我的说法,当你必须在动态生成的元素上绑定事件时,情况也是如此,当组件被渲染或渲染时,我正在触发它。 – Manish