簡體   English   中英

如何導入 graphql-upload?

[英]How to import graphql-upload?

我正在使用graphql-upload package。

graphql-upload package 的package.json文件的export部分是這樣的:-

"exports": {
  "./GraphQLUpload.mjs": "./GraphQLUpload.mjs",
  "./graphqlUploadExpress.mjs": "./graphqlUploadExpress.mjs",
  "./graphqlUploadKoa.mjs": "./graphqlUploadKoa.mjs",
  "./package.json": "./package.json",
  "./processRequest.mjs": "./processRequest.mjs",
  "./Upload.mjs": "./Upload.mjs"
},

在我的 app.js 文件中,我嘗試像這樣從"graphql-upload/graphqlUploadExpress.mjs" graphqlUploadExpress獲取 graphqlUploadExpress:

require("dotenv").config({ path: `./env/.env-${process.env.NODE_ENV}` });
const express             = require("express");
const logger              = require("morgan");
const moment              = require("moment");
const cors                = require("cors");
const path                = require("path");
const bodyParser          = require('body-parser');
const app                 = express();
const fs                  = require("fs");
const { ApolloServer, gql }                   = require("apollo-server-express");
const { mergeGraphQLTypes, mergeResolvers }   = require("@graphql-tools/merge");
const { makeExecutableSchema }                = require("@graphql-tools/schema");
const { applyMiddleware }                     = require("graphql-middleware");
const { graphqlUploadExpress }                = require("graphql-upload/graphqlUploadExpress.mjs"); // <= This is how it is exported
const { createServer }                        = require("http"); // newly added
const { ApolloServerPluginDrainHttpServer, ApolloServerPluginLandingPageLocalDefault } = require("apollo-server-core");
const { WebSocketServer }                     = require("ws");
const { useServer }                           = require("graphql-ws/lib/use/ws");

require("./database/db");
require("./helper/function");
const Stripe = require("./stripe/stripeRoute");
const Cron   = require("./scheduleCron/scheduleCronRoute");
const generateFolder = Helper("generate-folder");

但是,我收到如下錯誤:

Error [ERR_REQUIRE_ESM]: Must use import to load ES Module:
  C:\node-project\parkyt-new-api\server\node_modules
    \graphql-upload\graphqlUploadExpress.mjs
  at Module.load (internal/modules/cjs/loader.js:994:11)
  …more traceback
  (internal/modules/run_main.js:71:12) {code: 'ERR_REQUIRE_ESM'

如何導入graphql-upload

改為使用動態導入:

 const { default: graphqlUploadExpress } = await import(
   'graphql-upload/graphqlUploadExpress.mjs'
 );

在這里閱讀更多

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM