(2017-03-13) için güncelleme :
ModuleId ile ilgili tüm açıklamalar kaldırıldı. "Bileşen göreli yolları" yemek kitabı silindi
Önerilen SystemJS yapılandırmamıza yeni bir SystemJS eklentisi (systemjs-angular-loader.js) ekledik. Bu eklenti, templateUrl ve styleUrls içindeki "bileşene göre" yolları sizin için "mutlak yollara" dinamik olarak dönüştürür.
Yalnızca bileşen göreli yollar yazmanızı önemle tavsiye ederiz. Bu dokümanlarda ele alınan tek URL biçimi budur. Artık yazmanıza gerek yok @Component({ moduleId: module.id })
.
Kaynak: https://angular.io/docs/ts/latest/guide/change-log.html
Tanım:
moduleId?: string
moduleId
@Component
detaylandırma içindeki parametre string
;
" Bileşeni içeren modülün modül kimliği. "
CommonJS kullanımı: module.id
,
SystemJS kullanımı: __moduleName
Kullanım nedenimoduleId
:
moduleId
stil sayfalarınız ve şablonlarınız için dokümanlarda belirtildiği gibi göreli yolları çözmek için kullanılır.
Bileşeni içeren modülün modül kimliği. Şablonlar ve stiller için göreli URL'leri çözebilmek için gerekiyordu. Dart'da bu otomatik olarak belirlenebilir ve ayarlanmasına gerek yoktur. CommonJS'de bu her zaman module.id olarak ayarlanabilir.
ref (eski): https://angular.io/docs/js/latest/api/core/index/ComponentMetadata-class.html
@Component meta verilerinin moduleId özelliğini ayarlayarak şablonun ve stil dosyalarının bileşen sınıfı dosyasına göre konumlarını belirtebiliriz
ref: https://angular.io/docs/ts/latest/cookbook/component-relative-paths.html
Örnek kullanım:
Klasör yapısı:
RootFolder
├── index.html
├── config.js
├── app
│ ├── components
│ │ ├── my.component.ts
│ │ ├── my.component.css
│ │ ├── my.component.html
Module.id olmadan :
@Component({
selector: 'my-component',
templateUrl: 'app/components/my.component.html', <- Starts from base path
styleUrls: ['app/components/my.component.css'] <- Starts from base path
})
Module.id ile :
tsconfig.json:
{
"compilerOptions": {
"module": "commonjs", <- need to change this if you want to use module.id property
...
@Component({
moduleId: module.id,
selector: 'my-component',
templateUrl: 'my.component.html', <- relative to the components current path
styleUrls: ['my.component.css'] <- relative to the components current path
})