Ald*_*jal 10 javascript node.js nestjs
在 Nestjs 项目中,我遇到了一个库的问题,我没有在代码中直接使用它,但它被第三方使用。
node_modules\wrap-ansi\index.js:2 中的 stringWidth = require('string-width') 不支持
这是 package.json 依赖项:
"dependencies": {
"@nestjs-modules/mailer": "^1.9.1",
"@nestjs/common": "^10.1.2",
"@nestjs/config": "^3.0.0",
"@nestjs/core": "^10.1.2",
"@nestjs/event-emitter": "^2.0.2",
"@nestjs/jwt": "^10.0.3",
"@nestjs/mapped-types": "^2.0.2",
"@nestjs/passport": "^10.0.0",
"@nestjs/platform-express": "^10.1.2",
"@nestjs/swagger": "^7.1.4",
"@nestjs/throttler": "^4.0.0",
"@nestjs/typeorm": "^10.0.0",
"@ttshivers/automapper-classes": "^8.8.3",
"@ttshivers/automapper-core": "^8.8.3",
"@ttshivers/automapper-nestjs": "^8.8.3",
"bcrypt": "^5.1.0",
"class-transformer": "^0.5.1",
"class-validator": "^0.14.0",
"handlebars": "^4.7.8",
"nodemailer": "^6.9.7",
"passport": "^0.6.0",
"passport-custom": "^1.1.1",
"passport-jwt": "^4.0.1",
"passport-local": "^1.0.0",
"pg": "^8.11.0",
"reflect-metadata": "^0.1.13",
"rxjs": "^7.2.0",
"typeorm": "^0.3.16"
},
"devDependencies": {
"@nestjs/cli": "^10.1.11",
"@nestjs/schematics": "^10.0.1",
"@nestjs/testing": "^10.1.2",
"@types/bcrypt": "^5.0.0",
"@types/express": "^4.17.13",
"@types/jest": "29.5.3",
"@types/node": "20.4.5",
"@types/nodemailer": "^6.4.13",
"@types/passport-jwt": "^3.0.8",
"@types/passport-local": "^1.0.35",
"@types/supertest": "^2.0.11",
"@typescript-eslint/eslint-plugin": "^6.2.0",
"@typescript-eslint/parser": "^6.2.0",
"eslint": "^8.0.1",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-prettier": "^5.0.0",
"jest": "29.6.2",
"prettier": "^3.0.0",
"source-map-support": "^0.5.20",
"supertest": "^6.1.3",
"ts-jest": "29.1.1",
"ts-loader": "^9.2.3",
"ts-node": "^10.0.0",
"tsconfig-paths": "4.2.0",
"typescript": "^5.1.6",
"vite": "^4.4.7"
},
"jest": {
"moduleFileExtensions": [
"js",
"json",
"ts"
],
"rootDir": "src",
"testRegex": ".*\\.spec\\.ts$",
"transform": {
"^.+\\.(t|j)s$": "ts-jest"
},
"collectCoverageFrom": [
"**/*.(t|j)s"
],
"coverageDirectory": "../coverage",
"testEnvironment": "node",
"moduleNameMapper": {
"@application/(.*)": "<rootDir>/application/$1",
"@domain/(.*)": "<rootDir>/domain/$1",
"@infrastructure/(.*)": "<rootDir>/infrastructure/$1"
}
}
Run Code Online (Sandbox Code Playgroud)
当我注意到这个问题时,我安装的最新软件包是:
@nestjs-modules/mailer
nodemailer
handlebars
@types/nodemailer
Run Code Online (Sandbox Code Playgroud)
我运行任何嵌套命令面临的问题是:
基于类似的帖子,这里和这里,我尝试在 package.json 中添加 "type": "module" 但没有成功。另外,我删除了node_modules并重新安装了包(yarn),这就是我得到的:
相同的错误:var stringWidth = require('string-width')但在不同的文件中:node_modules\wide-align\align.js:2
感谢您的帮助
Mat*_*hew 21
我有同样的问题,这帮助我解决了这个问题
将其添加到您的 package.json 文件中
"resolutions": {
"wrap-ansi": "7.0.0",
"string-width": "4.1.0"
}
Run Code Online (Sandbox Code Playgroud)