2017-11-07 14 views
1
私は、私はいつものparamsで新しいコンポーネントを得た角度CLIを使用して新しいコンポーネント生成

角度のカプセル化のparam

@Component({ 
    selector: 'app-test1', 
    templateUrl: './test1.component.html', 
    styleUrls: ['./test1.component.css'] 
}) 

しかし、今、何かがうまくいかないし。私は私がコンポーネントにインポートする必要が1つの以上の追加のparamを取得NGのGC [名]を使用すると、私はカプセル化を意味:ViewEncapsulation.None

@Component({ 
    selector: 'app-test1', 
    templateUrl: './test1.component.html', 
    styleUrls: ['./test1.component.css'], 
    encapsulation: ViewEncapsulation.None 
}) 

私はノーノード/角度CLIおよびなどを再インストールしようとしていました結果。私はあなたがあなたの設定で設定したオプションがあるかもしれません使用しているCLIのバージョンに応じて、パラメータなしで「カプセル化」新しいコンポーネントを作成するために行うには、事前

+0

最終的に解決策が得られましたか、それでも問題はありますか? – mtpultz

答えて

0

@mtpultsが言うように、PRはプッシュされ、この問題を解決するhttps://github.com/angular/angular-cli/issues/8374のためにマージされました。現在のところ、それはマスター上だけですので、上記のことはマイナーリリースを行うまでのストップギャップになります。リリース後、あなたがPRを読んだ場合、それは以前と同じようになります。

0

おかげで何を持っています。あなたは.angular-cli.json

"component": { 
    "viewEncapsulation": "None" 
}, 

に次のようにしている場合、この問題をテストするときに私が見つけたCLIの1.5.0に欠陥があるとされていることがわかります。 https://github.com/angular/angular-cli/issues/8383

+0

これをプロジェクトの.angular-cli.jsonに追加しようとしていましたが、結果はありません – zhuravlyov

+0

デフォルトのブロック内に入ります。また、私のリンクごとに欠陥があります。 – zmanc

0

ViewEncapsulationのデフォルト値は、Angularのv2、v4、およびv5の場合はEmulatedです。ですから、Angular CLIのv1.5で生成されたコンポーネントに追加されたencapsulation: ViewEncapsulation.Noneを削除するか、それをencapsulation: ViewEncapsulation.Emulatedに変更するとデフォルトが使用されます。

これは、Angular CLIを使用してコンポーネントを生成するときに自動的に削除されます。ViewEncapsulationのデフォルト値はangular.cli.jsonです。使用可能なすべてのキーについてはwikiを参照してください。

"defaults": { 
    "styleExt": "scss", 
    "component": { 
    "viewEncapsulation": "Emulated" 
    } 
} 

3つの列挙から選択するViewEncapsulationの種類があります:あなたはViewEncapsulationに慣れていない場合EmulatedNative、およびNonedocsを参照してください。 ViewEncapsulationに慣れておらず、どのように影DOMに関連しているのであれば、これは良いarticleです。

インポートする必要があるコンポーネントごとに手動でこれを行うことを選択した場合、作成時には生成されたコンポーネントには存在しません。ViewEncapsulation

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

@Component({ 
    selector: 'app-example', 
    templateUrl: './example.component.html', 
    styleUrls: ['./example.component.scss'], 
    encapsulation: ViewEncapsulation.Emulated 
}) 
export class ExampleComponent implements OnInit { 

    constructor() { } 

    ngOnInit() { } 

} 

UPDATE

A PRプッシュして、この問題を解決https://github.com/angular/angular-cli/issues/8374ためにマージされました。現在のところ、それはマスター上だけですので、上記のことはマイナーリリースを行うまでのストップギャップになります。リリース後、あなたがPRを読んだ場合、それは以前と同じようになります。

関連する問題