【问题标题】:Error [ERR_REQUIRE_ESM]: Must use import to load ES Module:错误 [ERR_REQUIRE_ESM]:必须使用导入来加载 ES 模块:
【发布时间】:2021-06-18 23:16:26
【问题描述】:

尝试初始化护照并收到此错误。

错误 [ERR_REQUIRE_ESM]:必须使用导入来加载 ES 模块:/Users/seanburnett/Desktop/Zero 到 Blockchain/Module 6/Homework/final-project/server/config/passport.js 不支持 ES 模块的 require()。

import express from 'express';
import bodyParser from 'body-parser';
import mongoose from 'mongoose';
import cors from 'cors';
import dotenv from 'dotenv';
import { createRequire } from 'module';
const require = createRequire(import.meta.url);


import postRoutes from './routes/posts.js'
import userRoutes from './routes/user.js'
import loginRoutes from './routes/login.js'

const app = express();
dotenv.config();
require('./config/passport')(passport);

app.use(passport.initialize());
app.use(passport.session());

app.use(bodyParser.json({limit: "30mb", extended: true}));
app.use(bodyParser.urlencoded({limit: "30mb", extended: true}));
app.use(cors());

app.use('/posts', postRoutes);
app.use('/auth', userRoutes);
app.use('/login', loginRoutes);

【问题讨论】:

    标签: node.js passport.js


    【解决方案1】:

    改成这个

    import express from 'express';
    import bodyParser from 'body-parser';
    import mongoose from 'mongoose';
    import cors from 'cors';
    import dotenv from 'dotenv';
    import { createRequire } from 'module';
    const URL = createRequire(import.meta.url); // <-- You had reset the require here.
    
    
    import postRoutes from './routes/posts.js'
    import userRoutes from './routes/user.js'
    import loginRoutes from './routes/login.js'
    
    const app = express();
    dotenv.config();
    require('./config/passport')(passport);
    
    app.use(passport.initialize());
    app.use(passport.session());
    
    app.use(bodyParser.json({limit: "30mb", extended: true}));
    app.use(bodyParser.urlencoded({limit: "30mb", extended: true}));
    app.use(cors());
    
    app.use('/posts', postRoutes);
    app.use('/auth', userRoutes);
    app.use('/login', loginRoutes);
    

    【讨论】:

    • 我得到 ReferenceError: require is not defined。当我这样做时
    • @SeanBurnett 你找到解决这个错误的方法了吗?
    猜你喜欢
    • 1970-01-01
    • 2020-09-06
    • 2022-12-17
    • 2021-12-01
    • 1970-01-01
    • 2020-10-13
    • 2021-09-06
    • 2021-09-26
    • 2021-07-30
    相关资源
    最近更新 更多