Saya mencoba menampilkan aplikasi nodejs saya melalui localhost:3000.

File JS utama saya adalah "app.js". Saya menjalankan di terminal ini: "aplikasi simpul" dan responsnya adalah "server dijalankan", tetapi ketika saya mengetik "localhost:3000" di browser saya, terminal menampilkan pesan kesalahan ini: "Kesalahan: Gagal mencari tampilan "home" di direktori views "C:...\views". Kemudian saya menjalankan terminal "npm start", dan mendapat respons yang sama dari "server run", dan kemudian browser localhost:3000 yang sama error: "Kesalahan: Gagal mencari tampilan "rumah" di direktori tampilan "C:...\views".

Saya menginstal paket-paket itu: (1) npm init y-, THEN package.json, (2) express-handbars (dan menambahkan file views\main.handbar + views\home.handbars).

Kode saya di file app.js adalah sebagai berikut:

const express = require('express');
const exphbs = require('express-handlebars');
const app = express();

app.engine('handlebars', exphbs({ defaultLayout: 'main' }));
app.set('view engine', 'handlebars');

app.use(express.static('public'));

app.get('/', (req, res) => {
  res.render('home', { title: 'Home Page' });
});

app.get('/about', (req, res) => {
  res.render('about', { title: 'About Us Page' });
});

app.listen(3000, () => console.log('server run!'));

Ini adalah printscreen yang mungkin akan lebih membantu

Mencari pertanyaan di sini, di sini dan di sini tidak membantu saya memecahkan masalah saya. Apa yang harus L lakukan untuk memperbaiki dan membuat localhost:3000 berjalan dengan baik di browser saya?

0
Yair Shachar 15 Maret 2020, 13:06

1 menjawab

Jawaban Terbaik

Anda memiliki file home.handlebars di folder yang salah.

Seperti yang Anda lihat dari pesan kesalahan, itu diharapkan ditemukan sebagai views/home.handlebars, namun Anda memilikinya di views/layouts/home.handlebars!

Folder views/layouts seharusnya hanya berisi tata letak (seperti main.handlebars Anda yang tampaknya dikonfigurasi sebagai tata letak).

(Saya kira file about.handlebars harus masuk views juga...)

enter image description here

Seharusnya terlihat seperti ini sebagai gantinya:

enter image description here

0
CherryDT 15 Maret 2020, 10:14