Mientras desarrollamos un paquete, necesitamos una forma de saber si el paquete "x" existe en dev de peer o de desarrollo, estoy intentando
npm ls --omit dev # to list peers depsy probé
yarn list --dev # to list dev depsNo tuve éxito en ninguno de ellos.
¿Alguien puede ayudar a resolver esto con un simple comando npm o yarn ?
Creo que su project file is not configured/missing the dependencies cuando las agregó. Independientemente, hay dos pasos para esto, crear la dependencia y luego; muévalo a peerDependencies que se enumeran a continuación.
También comparta su archivo de proyecto para futuras preguntas.
Primero necesita crear esas dependencias en su proyecto (se explica a continuación #2)
Second/Then NPM/Yarn puede aprovechar eso y dar los resultados correctos cuando haga una lista.
npm i @angular/core
"dependencies": { "@angular/core": "^12.0.0" }peerDependencies . "peerDependencies": { "@angular/core": "^12.0.0" } // for peer dependencies on a package & specific release npm info react-native@latest peerDependencies // for peer dependencies on a package *** replace react-native with your package npm info react-native peerDependencies // for production dependencies npm list -dev -depth 0 // or with flags npm list -depth 0 -prod trueSi todo lo demás falla, puede escribir un script de Node.js que require('./package.json') e inspeccionar los valores de dependencies , peerDependencies y devDependencies del objeto resultante.
Esto no le dirá si ya están instalados o no, y no le informará sobre las dependencias transitivas.
npm ofrece formas de omitir las dependencias de desarrollo y pares de npm ls pero no las dependencias de producción, e imagino que ese podría ser el problema con el que se está encontrando. Esta es una solución torpe para eso.
Una vez que haya hecho esto para obtener una lista de dependencias de pares y desarrolladores, puede usar child_process para ejecutar npm ls en cada uno para ver si realmente están instalados.
Esta no es una solución elegante, pero si nada más funciona, al menos debería funcionar.
> require('./package.json').devDependencies { '@semantic-release/changelog': '^6.0.0', '@semantic-release/git': '^10.0.0', chai: '^4.2.0', karma: '^6.0.2', 'karma-chai': '^0.1.0', 'karma-chrome-launcher': '^3.1.0', 'karma-coverage': '^2.0.3', 'karma-firefox-launcher': '^2.0.0', 'karma-ie-launcher': '^1.0.0', 'karma-jasmine': '^4.0.0', 'karma-mocha': '^2.0.1', mocha: '^9.0.0', nyc: '^15.0.1', requirejs: '^2.3.6', 'semantic-release': '^18.0.0', standard: '^16.0.0' } > Object.keys(require('./package.json').devDependencies) [ '@semantic-release/changelog', '@semantic-release/git', 'chai', 'karma', 'karma-chai', 'karma-chrome-launcher', 'karma-coverage', 'karma-firefox-launcher', 'karma-ie-launcher', 'karma-jasmine', 'karma-mocha', 'mocha', 'nyc', 'requirejs', 'semantic-release', 'standard' ] >