Tenemos un proyecto SDK del que dependen otros dos proyectos.
Cuando queremos construir una aplicación completa, primero, necesitamos construir un proyecto SDK y cargarlo. Luego podemos construir otros dos proyectos después de ejecutar npm install .
Esta vez quiero agregar un script para el desarrollador. Cuando ejecuto el script en el proyecto SDK, puedo guardar los archivos de salida creados en otros proyectos node_modules .
Aquí está mi código.
archivo package.json :
{ ... "scripts": { "build:dev": "webpack --mode=development", ... } ... } archivo webpack.config.js :
let config = { ... module: { rules: [ { test:/\.tsx?$/, use: 'ts-loader', exclude: /node_modules/ } ] } ... } module.exports = (env, argv) => { if(argv.mode === 'development') { // We put all the projects in one repo config.output.path = path.resolve(__dirname,'../another-project/node_modules/sdk/dist/bundle') } } Y por último establecemos tsconfig.json outDir
El problema es:
Resuelvo el último problema usando webpack -env xxx && webpack -env xxx . Acabo de ejecutar el script dos veces, tal vez alguien tenga una mejor idea.
Ahora solo una pregunta:
archivo webpack.config.js :
let config = { ..., module: { rules: [ { test:/\.tsx?$/, use: 'ts-loader', options: { configFile: "tsconfig.server.json" } } ] }, ... } Entonces puedo cambiar configFlie en el módulo webpack.
https://webpack.js.org/configuration/output/
module.exports = { ... output: { filename: "lib.js" } ...Configurar el directorio de salida en mecanografiado no lo ayudará porque webpack es el responsable de la compilación y solo usará mecanografiado para la compilación después de generar los archivos.