Templat komponen menu program sudut tidak berfungsi

Saya mencoba menambahkan komponen menu di Angular 6. Semua berfungsi dengan baik tetapi templat komponen menu.
Masalahnya adalah browser memberikan kesalahan:

Failed to compile.

./src/app/menu/menu.component.ts
Module not found: Error: Can't resolve './menu/menu.component.html' in '/home/fly/myangular/conFusion/src/app/menu'

Di menu.component.ts saya memiliki alamat templateUrl di dekorator Komponen.

@Component({
  selector: 'app-menu',
  template: `
    <p>
      menu worksx!
    </p>
  `,
  styles: [],
  templateUrl: './menu/menu.component.html',
  styleUrls: ['./menu/menu.component.scss']
})  

Dan ini adalah pandangan menu.component.html saya:

<div class="container"
     fxLayout="column"
     fxLayoutGap="10px">

  <mat-list fxFlex>
    <mat-list-item *ngFor="let dish of dishes">
      <img matListAvatar src={{ dish.image }} alt={{ dish.name }}>
      <h1 matLine> {{ dish.name }} </h1>
      <p matLine>
        <span> {{ dish.description }} </span>
      </p>
    </mat-list-item>
  </mat-list>

</div>

PS: Ini adalah struktur proyek saya:
masukkan deskripsi gambar di sini


Edit: Setelah memperbaiki alamat template, halaman menjadi putih, Ini konsol saya:

MenuComponent.html:7 ERROR DOMException: Failed to execute 'setAttribute' on 'Element': '}}' is not a valid attribute name.
    at EmulatedEncapsulationDomRenderer2.push../node_modules/@angular/platform-browser/fesm5/platform-browser.js.DefaultDomRenderer2.setAttribute (http://localhost:4200/vendor.js:83639:16)
    at BaseAnimationRenderer.push../node_modules/@angular/platform-browser/fesm5/animations.js.BaseAnimationRenderer.setAttribute (http://localhost:4200/vendor.js:82265:23)
    at DebugRenderer2.push../node_modules/@angular/core/fesm5/core.js.DebugRenderer2.setAttribute (http://localhost:4200/vendor.js:52472:23)
    at createElement (http://localhost:4200/vendor.js:49144:22)
    at createViewNodes (http://localhost:4200/vendor.js:51370:26)
    at createEmbeddedView (http://localhost:4200/vendor.js:51317:5)
    at callWithDebugContext (http://localhost:4200/vendor.js:52354:25)
    at Object.debugCreateEmbeddedView [as createEmbeddedView] (http://localhost:4200/vendor.js:51855:12)
    at TemplateRef_.push../node_modules/@angular/core/fesm5/core.js.TemplateRef_.createEmbeddedView (http://localhost:4200/vendor.js:49904:38)
    at ViewContainerRef_.push../node_modules/@angular/core/fesm5/core.js.ViewContainerRef_.createEmbeddedView (http://localhost:4200/vendor.js:49770:35)
View_MenuComponent_1 @ MenuComponent.html:7
MenuComponent.html:7 ERROR CONTEXT DebugContext_
View_MenuComponent_1 @ MenuComponent.html:7
core.js:3121 Angular is running in the development mode. Call enableProdMode() to enable the production mode.
%7B%7B:1 Failed to load resource: the server responded with a status of 404 (Not Found)

Ini app.module.ts saya:

import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { BrowserModule } from '@angular/platform-browser';


import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { MatToolbarModule } from '@angular/material/toolbar'; 
import { FlexLayoutModule } from '@angular/flex-layout';

import 'hammerjs';
import { MenuComponent } from './menu/menu.component';

import { MatListModule } from '@angular/material/list';
@NgModule({
  declarations: [
    AppComponent,
    MenuComponent
  ],
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    MatToolbarModule,
    FlexLayoutModule,
    MatListModule
  ],
  providers: [],
  bootstrap: [AppComponent ]
})
export class AppModule { }

person Adil Saju    schedule 16.10.2018    source sumber
comment
Jawaban Jacopos harus memperbaikinya. Masalahnya adalah templateUrl dan styleUrls harus berupa jalur relatif dari file .ts Anda ke .html template dan file gaya Anda, yang, dalam kasus Anda, berada di direktori yang sama.   -  person Felix Lemke    schedule 16.10.2018
comment
@ngfelixl Saya memperbaikinya, tetapi sekarang halamannya berwarna putih penuh dan tidak menampilkan apa pun. Ada ide?   -  person Adil Saju    schedule 16.10.2018
comment
Buka dev-tools dan beri tahu kami keluaran tab konsol.   -  person Felix Lemke    schedule 16.10.2018
comment
jika Anda mendapatkan halaman kosong hapus semuanya dan tambahkan saja beberapa nilai dummy dan periksa dan juga berikan padding-top dan left terkadang konten akan disembunyikan di atas   -  person chethu    schedule 16.10.2018
comment
impor hammerjs di file main.ts bukan di modul utama   -  person chethu    schedule 16.10.2018
comment
@chethu Saya sudah menambahkan sekarang di main.ts, tapi tidak ada perubahan   -  person Adil Saju    schedule 16.10.2018
comment
di menu.component.html Anda hapus semuanya dan tambahkan saja ‹h1›Something.....‹/h1› cukup periksa apakah Anda mendapatkan ini   -  person chethu    schedule 16.10.2018
comment
@chethu Ya, saya mendapat Sesuatu..   -  person Adil Saju    schedule 16.10.2018
comment
Anda mendapatkan kesalahan apa pun sekarang di jendela konsol   -  person chethu    schedule 16.10.2018
comment
Tidak ada kesalahan, semuanya baik-baik saja   -  person Adil Saju    schedule 16.10.2018
comment
lalu coba ini ‹div class=container fxLayout=column fxLayoutGap=10px› ‹mat-list› ‹mat-list-item *ngFor=biarkan hidangan› ‹img matListAvatar src={{dish.image}} alt={{ hidangan.nam }}› ‹h1 › {{ nama hidangan }} ‹/h1› ‹p › ‹span› {{dish.description}} ‹/span› ‹/p› ‹/mat-list-item› ‹ /mat-list› ‹/div›   -  person chethu    schedule 16.10.2018
comment
Mari kita melanjutkan diskusi ini dalam chat.   -  person Adil Saju    schedule 16.10.2018


Jawaban (2)


Komponennya harus seperti ini: (tanpa panah)

@Component({
  selector: 'app-menu',
  templateUrl: 'menu.component.html',
  styleUrls: ['menu.component.scss']
}) 
person Jacopo Sciampi    schedule 16.10.2018
comment
Ya, kesalahannya hilang tetapi halaman tidak menampilkan tampilan menu.component.html. Halamannya berwarna putih penuh sekarang! - person Adil Saju; 16.10.2018
comment
Anda sebaiknya hanya menggunakan templateUrl dan menghapus template - person standby954; 16.10.2018
comment
bagaimana dengan menghapus template dan styles dari dekorator komponen? - person Jacopo Sciampi; 16.10.2018
comment
Saya menghapusnya, tetapi tidak ada perubahan. - person Adil Saju; 16.10.2018
comment
./menu/menu.component.html relatif mengacu pada subdirektori dari menu.component.ts, jadi Anda harus menggunakan ./menu.component.html dan ./menu.component.scss sebagai gantinya - person standby954; 16.10.2018
comment
ubah url template menjadi './menu.component.html' dan css menjadi ['./menu.component.css'] - person chethu; 16.10.2018
comment
tetap tidak ada :( - person Adil Saju; 16.10.2018
comment
jangan gunakan template dan templateUrl, hapus template dan juga hapus gaya - person chethu; 16.10.2018
comment
Apakah Anda merender komponennya? Maksud saya, di .html utama Anda, apakah Anda memiliki ini? <app-menu></app-menu> - person Jacopo Sciampi; 16.10.2018
comment
@JacopoSciampi Ya saya memilikinya - person Adil Saju; 16.10.2018
comment
Saya telah mengimpor MenuComponent, tetapi apakah saya harus melakukan bootstrap MenuComponent? - person Adil Saju; 16.10.2018
comment
@AdilSaju dapatkah Anda menambahkan app.module ke kode Anda dan kode html yang Anda dapatkan dari seluruh halaman saat dimuat? Saya yakin komponennya tidak dirender, bukan hanya htmlnya. Anda dapat memeriksanya dengan meletakkan breakpoint di constructor dari MenuComponent Anda. Hal lainnya mungkin ngFor atau bersepeda dengan benar. Sudahkah Anda mencoba mengkomentari semua kode html dan memasukkan <h1>It works!</h1 untuk melihat apakah Anda masih melihat halaman kosong? - person Jacopo Sciampi; 16.10.2018
comment
Sempurna, bisakah Anda menambahkan kode lengkap MenuComponent ? @AdilSaju - person Jacopo Sciampi; 16.10.2018

Sebenarnya saya menyelesaikan masalahnya sendiri. Masalahnya ada di bawah menu.component.html, di baris:

   <img matListAvatar src={{ dish.image }} alt={{ dish.name }}>

file tidak dapat mengidentifikasi src lokasi tanpa "".

diperbaiki oleh:

   <img matListAvatar src="{{ dish.image }}" alt="{{ dish.name }}">
person Adil Saju    schedule 17.10.2018