Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo crear un archivo de configuración para webpack

Cómo crear un archivo de configuración para webpack

1. Conocimientos básicos de webpack

1. Genere package.json en el proyecto: ingrese npm init en el directorio raíz del proyecto e ingrese la información correspondiente de acuerdo con las indicaciones. (También es posible no generar el archivo package.json, pero package.json es muy útil y se recomienda generarlos todos)

2. Instalar webpaack

a. Instale webpack globalmente: npm install webpack -g

b. Instale webpack en el proyecto y escriba webpack en devDependencies en package.json: ingrese al directorio raíz del proyecto y escriba npm install webpack ---save-dev. en la línea de comando.

3. Módulo de empaquetado

webpack & lt;output>.

se utiliza para especificar el archivo de empaquetado. y se utiliza para especificar el archivo de empaquetado.

Por ejemplo, webpack app/index.js

build/build.js significa empaquetar index.js en la carpeta de la aplicación en build.js en la carpeta de compilación.

2. Elementos de configuración de uso común de los archivos de configuración de Webpack

1. Webpack tiene un archivo de configuración predeterminado webpack.config.js, que debe crearse manualmente y se encuentra en la raíz. directorio del proyecto. Puede configurar múltiples archivos de configuración para un proyecto para lograr diferentes funciones a través de diferentes archivos de configuración. Cómo lograr esto se explicará más adelante.

2. El archivo de configuración del paquete web expone un objeto en el siguiente formato:

módulo.exports = {

//Entrada de configuración

}

3. Las entradas de configuración comunes se introducirán más adelante

entrada: el archivo de entrada, cadena u objeto del paquete de software

Salida. p>

salida: configura el resultado del empaquetado, objeto

nombre de archivo: define el nombre del archivo de salida, cadena

ruta: define la ruta del archivo de salida, cadena

módulo: define la lógica de procesamiento del módulo, objeto

cargadores: define un grupo de cargadores, matriz

[

{

p>

prueba:Expresión regular para archivos coincidentes

loader/loaders:Cadena o matriz para procesar archivos coincidentes. Si usa solo un cargador de módulos, use loader: string; si usa múltiples cargadores de módulos, use loaders: array

incluir: cadena o matriz de carpetas para incluir

excluir: cadena o matriz , usado para excluir carpetas

}

]

resolver: afecta la resolución del módulo, objeto

extensiones: sufijo de reconocimiento automático de finalización, matriz

complementos: complemento de definición, matriz

4. Detalles de la entrada

(1) Cuando la entrada es un carácter Cuando la entrada es una cadena, el la cadena representa la ruta del módulo a empaquetar. Si solo hay un módulo a empaquetar, puede usar este formulario

(2) Cuando la entrada es un objeto

a. . es una matriz. Este método se puede utilizar cuando es necesario empaquetar varios módulos en un solo módulo. Si no hay dependencias entre estos módulos, no es necesario considerar el orden de los valores en la matriz; si hay dependencias, el módulo con mayor dependencia se coloca en último lugar.

Por ejemplo: entrada:["./app/one.js",".app/two.js"]

Es un objeto en forma de clave. -pares de valores, que pueden usarse cuando necesite empaquetarlos en varios módulos por separado, por ejemplo

entrada:{

módulo1:"./app/one.js; ",

módulo2: ["./app/two.js","./app/tres.js"]

}

Nota: Cuándo la entrada es un objeto en forma de par clave-valor, el nombre del paquete es el nombre de la clave y el nombre del archivo de salida no puede ser un valor fijo, porque el método de denominación de cada paquete no puede ser el mismo

5.Descripción detallada de la salida

(1) La salida es un objeto

(2) Output.filename: especifica el nombre del archivo de salida, una cadena. Al generar un solo archivo, salida.nombredearchivo es una cadena determinada

Por ejemplo

salida:{

nombre de archivo: "build.js"

}

Al generar varios archivos, salida.nombredearchivo no puede ser una cadena definida. Para darle a cada archivo un nombre único, utilizamos las siguientes variables

Reemplazar [nombre] con el nombre del fragmento correspondiente al nombre de la clave de entrada

Reemplazar [hash] con el valor Hash compilado

[chunkhash] se reemplaza con el valor hash del fragmento

Por ejemplo:

salida:{

ruta:/. build/',

fialname:'[name].js'

}

(3)output.path: especifica la ruta del archivo de salida, a Ruta relativa, una cadena

(4) Hay otros valores en la salida, que no se especifican aquí. Se pueden encontrar instrucciones más detalladas en el sitio web oficial de webpack

6. módulo. Descripción detallada de los cargadores

(1) el módulo es un objeto que define la lógica de procesamiento de un módulo

(2) el módulo.loaders es una matriz que define un grupo de cargadores. Cada elemento de la matriz es un objeto

(3) module.loaders:[