2017-08-28 40 views
2

我有一个Angular 4应用程序,我只用一个组件的js和css文件。我看到的所有文档都建议将这些文件放在Index.html中,但我不想在每条路径上加载它们,只是将它们用于组件。这些文件与其他捆绑的js坐在dist文件夹中,并通过webpack从另一个文件夹复制。加载一个组件的外部JS和CSS

+0

工作不适合你'import'声明? –

+0

如何导入工作与随机js文件?这不是一个模块 –

+0

你仍然可以做到。我没有看到任何问题。 –

回答

0

如果您使用的青菜,那么你可以直接从它的包装 例如,在example.component.scss文件导入任何CSS文件添加此

@import '~bootstrap/dist/css/bootstrap.min.css'; 
0

对于JS文件,你必须实现AfterViewInit生命周期挂钩,并在这里导入您的文件,例如:

test.component.ts

import { Component, AfterViewInit } from '@angular/core'; 

@Component({ 
    templateUrl: './test.component.html', 
    styleUrls: ['./test.component.scss'] 
}) 
export class TestComponent implements AfterViewInit { 

    public ngAfterViewInit() { 
    require('path/to/your/script.js'); 
    } 
} 

和CSS文件,将它们导入您的SCSS文件,喜欢这里:

test.component.scss

@import '~path/to/your/external/style.min.css'; 
+0

不加载js文件。 –

+0

可以确保您编写正确的路径。你使用的是webpack吗? – FACode

+0

是的,我试过包装之前和之后的位置,什么都没有 –