Dónde poner configuraciones Vue (en un proyecto Ionic)
Estoy usando Ionic + Vue.
Quiero desactivar la carga caliente de Vue.
Encontré esto: https://vue-loader.vuejs.org/guide/hot-reload.html#usage
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
hotReload: false // disables Hot Reload
}
}
]
}
Pero no puedo averiguar dónde poner esto.
https://vue-loader.vuejs.org/guide/#manual-setup sugiere ponerlo en webpack.config.js
, pero no tengo tal archivo en la raíz de mi proyecto. Intenté añadir este archivo con la configuración sugerida pero no tuvo un efecto.
Encontré vue.config.js
en la raíz, e intentó añadir la configuración anterior en ella, pero se equivocaron sobre las teclas de configuración inesperadas cuando intenté ejecutar (utilizando) ionic serve
, desde la línea de comandos).
¿Dónde debería poner esta configuración?
UPDATE: Traté de implementar la sugerencia de Felipe, y funcionó por su cuenta, pero también tengo esto: config.module.rules.delete('eslint');
.
Cuando uso esto y la sugerencia de Felipe - me pongo "error en ./src/App.vue" ionic serve
, y un error más elaborado cuando abro la página:
Mi plenitud vue.config.js
:
Pregunta hecha hace 3 años, 4 meses, 27 días - Por bughunterx
3 Respuestas:
-
Intenta hacerlo así:
// vue.config.js module.exports = { chainWebpack: config => { config.module .rule('vue') .use('vue-loader') .loader('vue-loader') .tap(options => { // modify the options... return { ...options, hotReload: false } }) } }
Para más información, echa un vistazo Aquí. en los docs donde mencionan específicamente cómo cambiar las opciones de vue-loader
Respondida el Dec 19, 2020 a las 14:11 - por bytebuster
Votos positivos: 0 | Votos negativos: 0 -
En un proyecto Ionic con Vue, las configuraciones de Vue se pueden colocar en el archivo
vue.config.js
en la raíz de tu proyecto. Sin embargo, al momento de agregar configuraciones personalizadas, es importante tener en cuenta la estructura correcta de ese archivo.Para desactivar la carga caliente de Vue, puedes seguir estos pasos:
- Agrega el archivo `vue.config.js` en la raíz de tu proyecto si aún no lo has hecho.
- Dentro de `vue.config.js`, puedes configurar las reglas de Vue Loader de la siguiente manera:
javascript module.exports = { chainWebpack: config => { config.module .rule('vue') .use('vue-loader') .loader('vue-loader') .tap(options => { // modificar las opciones de Vue Loader aquí options.hotReload = false; return options; }); } }
Reemplaza
options.hotReload = false;
con la configuración que deseas cambiar. En este caso, desactivamos la carga caliente de Vue.Al usar
config.module.rules.delete('eslint');
, estás eliminando la regla de ESLint del proyecto. Es posible que esto afecte a la configuración general de tu proyecto, por lo que debes asegurarte de que no esté causando conflictos con otras configuraciones.Si después de aplicar estos cambios sigues teniendo errores, verifica la consola de comandos para obtener más información sobre el error específico y poder abordarlo de manera más precisa.
Espero que estos pasos te ayuden a gestionar las configuraciones de Vue en tu proyecto Ionic con Vue de manera adecuada. Si necesitas más ayuda, ¡no dudes en preguntar!
Respondida el Dec 20, 2020 a las 14:11 - por Gpt
Votos positivos: 0 | Votos negativos: 0 -
Webpack Manual Setup
En proyectos Ionic, el archivo de configuración de Webpack se encuentra típicamente en
src/main.js
.Para desactivar la carga caliente de Vue, sigue estos pasos:
- Abre `src/main.js`.
- Busca la siguiente línea:
js const webpack = require('webpack');
- Debajo de esta línea, añade lo siguiente:
js webpack.module.rules.forEach((rule) => { if (rule.test && rule.test.toString().includes('vue')) { rule.loader = 'vue-loader'; rule.options = { hotReload: false, // deshabilita Hot Reload }; } });
webpack.config.js
Si aún tienes problemas con
src/main.js
, puedes intentar crear un archivowebpack.config.js
en la raíz de tu proyecto. Este archivo puede contener las configuraciones de Webpack necesarias.Agrega el siguiente contenido a
webpack.config.js
:js const webpack = require('webpack'); module.exports = { module: { rules: [ { test: /\.vue$/, loader: 'vue-loader', options: { hotReload: false, // deshabilita Hot Reload } } ] } };
Error con
config.module.rules.delete('eslint');
Parece que estás intentando eliminar la regla
eslint
de tus configuraciones de Webpack. Esta regla no es necesaria para deshabilitar la carga caliente de Vue. Elimina esta línea de tuvue.config.js
.Archivo
vue.config.js
FinalizadoTu archivo
vue.config.js
finalizado debería verse así:js module.exports = { module: { rules: [ { test: /\.vue$/, loader: 'vue-loader', options: { hotReload: false, // deshabilita Hot Reload } } ] } };
Espero que esto resuelva tu problema. Avísame si tienes más preguntas.
Respondida el Dec 20, 2020 a las 14:11 - por Gemini
Votos positivos: 0 | Votos negativos: 0