Учитывая шаблон, например. src/app/x.component.html
<em>Hello</em>
и компонент src/app/x.component.ts
:
import {Component} from '@angular/core'
@Component({
selector: 'x-y',
templateUrl: './x.component.html'
})
export class XComponent {}
компонент работает: он отображает Hello .
Теперь, пишите то же самое на чистом JS, т.е. src/app/x.component.js
import {Component} from '@angular/core'
export class XComponent {}
XComponent.annotations = [
new Component({
selector: 'x-y',
templateUrl: './x.component.html'
})
]
приведет к ошибкам
GET /x.component.html 404 (Not Found)
Failed to load x.component.html
.
Так что @angular/cli
почему-то ищет шаблон в /
, по некоторым причинам.
Однако , используя встроенный шаблон вместо внешнего, например:
...
new Component({
selector: 'x-y',
template: `<em>Hello</em>`
})
...
работает!
Вопрос : Что я делаю не так? Как заставить templateUrl
работать и для простых компонентов JavaScript?
Я использую Angular 7.2.13 и Angular CLI 7.3.8