#node.js #typescript #d3.js #import #yarnpkg
#node.js #typescript #d3.js #импорт #yarnpkg
Вопрос:
Я получаю эту ошибку и не могу разрешить импорт d3. Я использую Typescript@4.0.5 и запустите файл layout.ts (Layout.js ) импортирует d3, который выдает ошибку.
import * as D3 from "d3";
и сборка пряжи
$ yarn build
yarn run v1.22.5
$ tsc amp;amp; node dist/lib/index.js
internal/modules/cjs/loader.js:834
throw err;
^
Error: Cannot find module 'd3'
Require stack:
- /home/github/my-app/dist/lib/graphs/Layout.js
- /home/github/my-app/dist/lib/index.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:831:15)
at Function.Module._load (internal/modules/cjs/loader.js:687:27)
at Module.require (internal/modules/cjs/loader.js:903:19)
at require (internal/modules/cjs/helpers.js:74:18)
at Object.<anonymous> (/home/github/my-app/dist/lib/graphs/Layout.js:27:25)
at Module._compile (internal/modules/cjs/loader.js:1015:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1035:10)
at Module.load (internal/modules/cjs/loader.js:879:32)
at Function.Module._load (internal/modules/cjs/loader.js:724:14)
at Module.require (internal/modules/cjs/loader.js:903:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/home/github/my-app/dist/lib/graphs/Layout.js',
'/home/github/my-app/dist/lib/index.js'
]
}
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
и мой tsconfig,
{
"compileOnSave": true,
"compilerOptions": {
"target": "es2018", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */
"module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */
"lib": ["DOM","dom.iterable","ES2018.AsyncIterable","ES2017.TypedArrays","es2018", "esnext.asynciterable", "ES5", "ES6"], /* Specify library files to be included in the compilation. */
"allowJs": true, /* Allow javascript files to be compiled. */
"declaration": true, /* Generates corresponding '.d.ts' file. */
"declarationMap": true,
"sourceMap": true, /* Generates corresponding '.map' file. */
"outDir": "./dist", /* Redirect output structure to the directory. */
/* Strict Type-Checking Options */
"strict": true, /* Enable all strict type-checking options. */
"types": [
"node", /* Type declaration files to be included in compilation. */
],
"esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
/* Experimental Options */
"experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */
"emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */
/* Advanced Options */
//"skipLibCheck": true, /* Skip type checking of declaration files. */
"forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */
}
}
любая помощь очень ценится. Заранее спасибо.
Ответ №1:
В нем есть встроенная команда build
yarn
. Все возможные варианты вы можете найти здесь.
Попробуйте yarn install
вместо этого
Комментарии:
1. ошибка
install
замененаadd
на добавление новых зависимостей. Вместо этого запустите «yarn add @types / d3».
Ответ №2:
Через несколько дней попробовал еще раз, нашел решение для добавления типа d3, для старых версий добавьте глобальные переменные
yarn install typings --global.
поиск типов с именем d3
yarn typings search --name d3
если он не существует, установите его,
yarn typings install d3 --save. //for old versions
yarn add @types/d3. //latest versions
и это сработало, как ожидалось!