admin管理员组

文章数量:1410724

I got the below error when I'm trying to run npm install. Error Message:

taskRepository: Failed to require task module for setTimestamp: require() of ES Module ......\node_modules\dateformat\lib\dateformat.js from .....\setTimestamp.js not 
supported.
Instead change the require of dateformat.js in .....\setTimestamp.js to a dynamic import() which is available in all CommonJS modules.

In setTimestamp.js file, we have

const stringReplacer = require("@ui5/builder").processors.stringReplacer;
const df = require("dateformat");

This is a SAPUI5 based cloud application and we've 2 package.json files. Under Root folder:

"version": "1.2.0",
"devDependencies": {
    "@ui5/builder": "^2.11.5",
    "@ui5/cli": "^2.14.10",
    "@wdio/cli": "7.23.0",
    "@wdio/cucumber-framework": "7.23.0",
    "@wdio/junit-reporter": "7.23.0",
    "@wdio/local-runner": "7.23.0",
    "@wdio/selenium-standalone-service": "7.23.0",
    "@wdio/spec-reporter": "7.23.0",
    "chai": "^4.3.6",
    "chromedriver": "^104.0.0",
    "cucumber-html-reporter": "5.5.0",
    "nyc": "^15.1.0",
    "opa-e2e": "^1.0.11",
    "request": "^2.88.2",
    "request-promise": "^4.2.6",
    "shelljs": "^0.8.5",
    "type": "module",
    "wdio-chromedriver-service": "^7.3.2",
    "wdio-cucumber-reporter": "0.0.2",
    "wdio-cucumberjs-json-reporter": "^4.4.3"
},
"resolutions": {
        "terser": ">=5.14.2",
        "markdown-it": ">=12.3.2",
        "marked": ">=4.0.10",
        "shelljs": ">=0.8.5",
        "ejs": ">=3.1.7",
        "node-fetch": ">=2.6.7",
        "got": ">=11.8.5",
        "follow-redirects": ">=1.14.8",
        "minimist": ">=1.2.6"
   }

Inner one:

"ui5": {
        "dependencies": [
            "ui5-middleware-livereload",
            "ui5-middleware-simpleproxy",
            "ui5-middleware-servestatic",
            "@dwc/ui5-middleware-dwc"
        ]
    },
    "devDependencies": {
        "@dwc/ui5-middleware-dwc": "^1.4.2-20220817085704",
        "@ui5/cli": "^2.14.10",
        "dateformat": "^5.0.3",
        "env-cmd": "^10.1.0",
        "eslint": "^8.22.0",
        "karma": "6.4.0",
        "karma-chrome-launcher": "^3.1.1",
        "karma-coverage": "^2.2.0",
        "karma-junit-reporter": "^2.0.1",
        "karma-qunit": "^4.1.2",
        "karma-sinon": "^1.0.5",
        "karma-ui5": "2.4.0",
        "nyc": "^15.1.0",
        "qunitjs": "^2.4.1",
        "rimraf": "^3.0.2",
        "shelljs": "^0.8.5",
        "start-server-and-test": "^1.14.0",
        "ui5-middleware-livereload": "^0.7.0",
        "ui5-middleware-servestatic": "^0.4.0",
        "ui5-middleware-simpleproxy": "^0.9.1",
        "wdio-chromedriver-service": "7.3.2"
    }, 


 "resolutions": {
        "terser": ">=5.14.2",
        "markdown-it": ">=12.3.2",
        "marked": ">=4.0.10",
        "ua-parser-js": ">=0.7.24",
        "log4js": ">=6.4.0",
        "karma": ">=6.3.16",
        "follow-redirects": ">=1.14.8",
        "minimist": ">=1.2.6"
    }

I tried to fix this issue by using:

npm i [email protected]

Or, in package.json file , wrote "type": "module" etc. Ref: Instead change the require of index.js, to a dynamic import() which is available in all CommonJS modules

Could anyone please help me to solve the error? Any help would be much appreciate. Request: Please don't close the question. I know it's duplicate question, however I couldn't find any solution, tried how much I found.Thank you

I got the below error when I'm trying to run npm install. Error Message:

taskRepository: Failed to require task module for setTimestamp: require() of ES Module ......\node_modules\dateformat\lib\dateformat.js from .....\setTimestamp.js not 
supported.
Instead change the require of dateformat.js in .....\setTimestamp.js to a dynamic import() which is available in all CommonJS modules.

In setTimestamp.js file, we have

const stringReplacer = require("@ui5/builder").processors.stringReplacer;
const df = require("dateformat");

This is a SAPUI5 based cloud application and we've 2 package.json files. Under Root folder:

"version": "1.2.0",
"devDependencies": {
    "@ui5/builder": "^2.11.5",
    "@ui5/cli": "^2.14.10",
    "@wdio/cli": "7.23.0",
    "@wdio/cucumber-framework": "7.23.0",
    "@wdio/junit-reporter": "7.23.0",
    "@wdio/local-runner": "7.23.0",
    "@wdio/selenium-standalone-service": "7.23.0",
    "@wdio/spec-reporter": "7.23.0",
    "chai": "^4.3.6",
    "chromedriver": "^104.0.0",
    "cucumber-html-reporter": "5.5.0",
    "nyc": "^15.1.0",
    "opa-e2e": "^1.0.11",
    "request": "^2.88.2",
    "request-promise": "^4.2.6",
    "shelljs": "^0.8.5",
    "type": "module",
    "wdio-chromedriver-service": "^7.3.2",
    "wdio-cucumber-reporter": "0.0.2",
    "wdio-cucumberjs-json-reporter": "^4.4.3"
},
"resolutions": {
        "terser": ">=5.14.2",
        "markdown-it": ">=12.3.2",
        "marked": ">=4.0.10",
        "shelljs": ">=0.8.5",
        "ejs": ">=3.1.7",
        "node-fetch": ">=2.6.7",
        "got": ">=11.8.5",
        "follow-redirects": ">=1.14.8",
        "minimist": ">=1.2.6"
   }

Inner one:

"ui5": {
        "dependencies": [
            "ui5-middleware-livereload",
            "ui5-middleware-simpleproxy",
            "ui5-middleware-servestatic",
            "@dwc/ui5-middleware-dwc"
        ]
    },
    "devDependencies": {
        "@dwc/ui5-middleware-dwc": "^1.4.2-20220817085704",
        "@ui5/cli": "^2.14.10",
        "dateformat": "^5.0.3",
        "env-cmd": "^10.1.0",
        "eslint": "^8.22.0",
        "karma": "6.4.0",
        "karma-chrome-launcher": "^3.1.1",
        "karma-coverage": "^2.2.0",
        "karma-junit-reporter": "^2.0.1",
        "karma-qunit": "^4.1.2",
        "karma-sinon": "^1.0.5",
        "karma-ui5": "2.4.0",
        "nyc": "^15.1.0",
        "qunitjs": "^2.4.1",
        "rimraf": "^3.0.2",
        "shelljs": "^0.8.5",
        "start-server-and-test": "^1.14.0",
        "ui5-middleware-livereload": "^0.7.0",
        "ui5-middleware-servestatic": "^0.4.0",
        "ui5-middleware-simpleproxy": "^0.9.1",
        "wdio-chromedriver-service": "7.3.2"
    }, 


 "resolutions": {
        "terser": ">=5.14.2",
        "markdown-it": ">=12.3.2",
        "marked": ">=4.0.10",
        "ua-parser-js": ">=0.7.24",
        "log4js": ">=6.4.0",
        "karma": ">=6.3.16",
        "follow-redirects": ">=1.14.8",
        "minimist": ">=1.2.6"
    }

I tried to fix this issue by using:

npm i [email protected]

Or, in package.json file , wrote "type": "module" etc. Ref: Instead change the require of index.js, to a dynamic import() which is available in all CommonJS modules

Could anyone please help me to solve the error? Any help would be much appreciate. Request: Please don't close the question. I know it's duplicate question, however I couldn't find any solution, tried how much I found.Thank you

Share Improve this question edited Aug 23, 2022 at 7:25 Nandita asked Aug 22, 2022 at 23:35 NanditaNandita 431 gold badge1 silver badge8 bronze badges 2
  • Please show your package.json – Konrad Commented Aug 22, 2022 at 23:39
  • Hi, I've added the two json files. Thank you – Nandita Commented Aug 23, 2022 at 7:26
Add a ment  | 

2 Answers 2

Reset to default 1

I got the same error requiring node-fetch. The solution was

const fetch = (...args) => import('node-fetch').then(({default: fetch}) => fetch(...args));

Use nodemon

  1. install nodemon if not installed
  2. create a nodemon.json file in root directory
  3. nodemon.json file should contain an object with a variable name to use for the environment. (i.e. {"env": { "enviornment_variable1":"somevalue", "environment_varialbe2":"somevalue" } } )
  4. Use the environment variable through process.env.environment_variable_key. In your something.js file you would make a variable for the environment variable (i.e. const x = process.env.enviornment_variable1
  5. Make sure to restart server

本文标签: javascriptA dynamic import() which is available in all CommonJS modulesStack Overflow