angular + Onsen-UI V2 будет генерировать * ngIf ошибку - PullRequest
0 голосов
/ 12 февраля 2019

Ошибка в angular + Onsen-UI V2.

"@angular/animations": "6.0.4",
"@angular/common": "6.0.4",
"@angular/compiler": "6.0.4",
"@angular/core": "6.0.4",
"@angular/forms": "6.0.4",
"@angular/http": "6.0.4",
"@angular/platform-browser": "6.0.4",
"@angular/platform-browser-dynamic": "6.0.4",
"@angular/router": "6.0.4",

[Мои папки]

+ src
  + views
    + app
      - app.css
      - app.html
      - app.ts
  - main.ts

+ www
  - app.js
  - index.html

[main.ts]

import {BrowserModule} from '@angular/platform-browser';
  :
  :
@NgModule({
    imports: [
        BrowserModule,
  :
  :

[app.ts]

@Component({
    selector: 'app',
    templateUrl: require('./app.html'),
    styleUrls: [String(require('./app.css'))],
    ]

})
export class MyApp {
  :

[app.html]

<div class="timeline" *ngFor="let data of timeline">
    <div class="post-data" id="num_{{data.post_id}}">
        <ons-list-item class="post-title">
            <div class="left">
                <img class="post-data-img"
                 *ngIf="data.url == 'default.png'"
                 src="./images/default@2x.png">
     :
     :

В это время возникает ошибка в * ngIf или * ngFor в html, указанном в templateUrl.

Uncaught Error: Template parse errors:
Property binding ngif not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". 
Property binding ngforOf not used by any directive on an embedded template. Make sure that the property name is spelled correctly and all directives are listed in the "@NgModule.declarations". 

В результате различных экспериментов это было решено путем написания встроенного HTML-кода с использованием шаблона :.Однако, поскольку разработка затруднена, я хотел бы развить ее отдельно в файл ts и html.(Это потому, что я хочу разделить работу с дизайнерами.)

Как мне сделать имя файла templateUrl и правильно работать?

...