本地主机:3030合并2

时间:2019-01-20 00:24:45

标签: javascript node.js

我目前有一个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.log('Something bad happened', err)
    }
    console.log(`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显示汽车列表?

1 个答案:

答案 0 :(得分:0)

在js文件中写入const cars = require('./cars.js');时,实际上是调用cars.js文件,而不是cars数组。如果要导入cars数组,请以这种方式编辑cars.js文件。

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文件将导出所需的数组。