В настоящее время у меня есть скрипт js для размещения локального хоста и другого javascript для моего массива. Почему, когда я делаю localhost:3030/api/cars, я не получаю список массивов? Вот мои коды:
'use strict'
const express = require('express')
const app = express()
const cars = require('./cars.js');
app.get('/', (req, res) => {
res.send('Hello from Express.')
})
app.get('/api', (req, res) => {
const payload = {
message: 'Hello from Express',
cars: cars
}
res.send({
data: payload
})
})
app.get('/api/cars', (request, response) => {
response.send({data: cars})
})
app.listen(3030, err => {
if (err) {
return console.info('Something bad happened', err)
}
console.info(`The server is listening on port 3030 ...`)
})
Вот мой javascript с массивом.
const cars = [{
id: 1,
make: 'Tesla',
model: 'S',
colour: 'Black'
},
{
id: 2,
make: 'Tesla',
model: '3',
colour: 'Red'
},
{
id: 3,
make: 'Tesla',
model: 'X',
colour: 'Silver'
},
{
id: 4,
make: 'Tesla',
model: 'Y',
colour: 'Chestnut Brown'
}
]
Как я могу исправить свой первый файл javascript, чтобы localhost: 3030/api/cars отображал список автомобилей?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


когда вы записываете const cars = require('./cars.js'); в свой файл js, вы фактически вызываете файл cars.js, а не массив cars. Отредактируйте файл cars.js таким образом, если хотите импортировать массив cars.
.
const cars = [{
id: 1,
make: 'Tesla',
model: 'S',
colour: 'Black'
},
{
id: 2,
make: 'Tesla',
model: '3',
colour: 'Red'
},
{
id: 3,
make: 'Tesla',
model: 'X',
colour: 'Silver'
},
{
id: 4,
make: 'Tesla',
model: 'Y',
colour: 'Chestnut Brown'
}
]
module.exports = cars;
Таким образом, ваш файл cars.js экспортирует нужный массив.