是否可以在'样式中包含一个非常大的css文件?在angular2?

时间:2016-05-21 17:53:50

标签: sass angular

import {Component, ViewEncapsulation} from '@angular/core';
import {Router, RouteConfig, ROUTER_DIRECTIVES} from '@angular/router-deprecated';

import {Home} from './components/home/home';
import {About} from './components/about/about';
import {RepoBrowser} from './components/repo-browser/repo-browser';

@Component({
  selector: 'seed-app',
  providers: [],
  pipes: [],
  directives: [ROUTER_DIRECTIVES],
  styles: [require('bootstrap.scss')],
  encapsulation: ViewEncapsulation.None,
  templateUrl: 'app/seed-app.html',
})
@RouteConfig([
  { path: '/home',       component: Home,        name: 'Home', useAsDefault: true },
  { path: '/about',      component: About,       name: 'About' },
  { path: '/github/...', component: RepoBrowser, name: 'RepoBrowser' },
])
export class SeedApp {

  constructor() {}

}

重要的部分是

  

样式:[require(' bootstrap.scss')],

所以bootstrap(css库)非常大,但是我想在我的angular2应用程序中使用它,所以我让主要组件的Encapsulation为none,所以它将与页面共享样式然后我包含bootstrap.scss as建议。

我的问题是:在 styles 性能明智的内容中有这么大的字符串(数千行)是否可以?将引导程序放在页面的头部就像常规的css文件一样好吗?

1 个答案:

答案 0 :(得分:1)

Angular2将提供构建步骤(仍在进行中的AFAIK),在将应用程序提供给浏览器之前执行此类处理。如果你使用它,它应该没关系,或者我试图避免以这种方式使用大型CSS文件。即使由于你在任何地方都使用ViewEncapsulation.None而没有重写,Angular2仍然可以解析CSS,这是多余的工作。