Я не могу запустить терминал узла в моем внутреннем файле server.js в моем проекте класса. Я НЕ запускаю это в своем браузере, я пытаюсь запустить свой локальный хост через терминал узла. Я пробовал просмотреть несколько статей, я убедился, что requirejs установлен, babel установлен, я пробовал заменить "import", а не require, и, насколько мне известно, все необходимые файлы установлены в моем пакете .json.

Когда я запускаю сервер nodemon или сервер node, я получаю следующее сообщение об ошибке

const express = require('express');
                ^
ReferenceError: require is not defined

Это код до сих пор.

const express = require('express');
const cors = require('cors');
// const mongoose = require('mongoose');
const mongoose = require('mongoose')
 require('dotenv').config();



const app = express();
const port = process.env.PORT || 5000;

app.use(cors());
app.use(express.json());
const uri = process.env.ATLAS_URI;
mongoose.connect(uri, { useNewUrlParser: true, useCreateIndex: true });const connection = mongoose.connection;connection.once('open', () => {  console.log("MongoDB database connection established successfully");})
const addLocationsRouter = require('./routes/addLocations.models');
const contactsRouter = require('./routes/contacts.models');
const homeRouter = require('../src/components/Home')
const allLocationsRouter = require('../src/components/alllocations')

app.use('/allLocations', allLocationsRouter)
app.use('/Home', homeRouter);
app.use('/addLocations', addLocationsRouter);
app.use('/contacts', contactsRouter);
app.listen(port, () => {
    console.log(`Server is running on port: ${port}`);
});

Я использовал require в других файлах частей в моей внутренней папке, и это не вызывает ошибок. Однако в моем файле server.js я, похоже, не могу использовать слово require

3
Saeed Shareef 2 Сен 2020 в 18:32

2 ответа

Лучший ответ

Хорошо, я думаю, что у меня это есть

Удалите axios, babel и requirejs. На самом деле вы не используете эти пакеты в своей серверной части.

Затем удалите "type": "module" из вашего package.json.

1
David Reke 2 Сен 2020 в 17:30

Согласно этой проблеме, вам следует удалить "type": "module" со своего {{X1 }} файл.

Можете ли вы убедиться, что это происходит в любом каталоге? По умолчанию файл .js не следует рассматривать как модуль. Я подозреваю, что вы можете находиться в каталоге (или во вложенном каталоге ниже), где в package.json в поле «тип» установлено значение «модуль».

@jkrems Вы правы. "Тип" модуля был причиной проблемы. Спасибо, что отметили это.

1
Zach Thacker 2 Сен 2020 в 17:09