resolve dependencies
1.0.0
npm i resolve-dependencies
resolve-dependencies -очень изначально названный Бундлер для Nexe. Это не намерение построить бундлер, но это то, что это такое.
default: resolveSync(options: Options, ...opts: Options[]): Promise<Result>Options : Объект | строка - запись для запуска с (если строка)entries : String [] - список точек входа, чтобы пройти, решен против CWDcwd : String - базовый каталог, от которого происходит разрешениеloadContent : логическое - указывает на то, что содержание должно быть включено в FileMap (это может быть необоснованным для крупных деревьев зависимостей)files : ({key: string]: файл | null}) [] - кэш уже разрешенных файловexpand : «Все» | 'нет' | «Переменная» - как следует расширить контексты модулей, чтобы включить дополнительные файлы Все параметры глубоко объединены, параметры строк добавляются в виде entries
Результат возвращает обещание результата объекта:
Result : объектentries : {[key: intry]: file} - все записи, предоставленные методу resolve и дерево подключенных filesfiles : {[key: abspath]: file} - все разрешенные файлы, представленные по их абсолютному путиwarnings : string [] - предупреждения массива, сгенерированные при обработке files File имеет следующую форму
File : объект - объект, представляющий файлsize : номер - размер файла ссылки или файлаabsPath : string - абсолютный путь к файлуmoduleRoot : String | Undefined - каталог, содержащий модульный пакет.package : любой | неопределенныйdeps : {[Key: запрос]: файл | null} - зависимости, идентифицированные в файле, клавиша по запросуbelongsTo : Файл | неопределенное - основной файл модуля владенияrealSize : номер | неопределенное - установить к размеру реального файла, если ABSPath является символомrealPath : String | неопределенная - установлена на REALPATH, если ABSPATH является символомcontents : строка | нулевойcontextExpanded : BooleanvariableImports : логический import resolveDependencies from 'resolve-dependencies'
const { entries , files } = resolveDependencies ( './entry-file.js' )
console . log ( entries [ './entry-file.js' ] )
// {
// absPath: "/path/to/entry-file.js",
// contents: "console.log('hello world')",
// realSize: 26,
// realPath: "/path/to/entry/lib/file.js"
// size: 12
// variableImports: false,
// deps: {
// "./dependency": {
// absPath: "/path/to/dependency.js"
// ...
// },
// path: null, //node builtin does not resolve
// mkdirp: {
// absPath: "/path/to/node_modules/mkdirp/index.js",
// modulePath: "/path/to/node_modules/mkdirp",
// package: {
// name: "mkdirp"
// ...
// }
// }
// }
// }
// `files` is a similar structure to entries, but
// is flat and keyed by the file's absolute path.