@intlify/unplugin-vue-i18n not support HMR with Static bundle importing

Abierto
#299 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
typescript, vite

Línea de trabajo

Comienza ejecutando la reproducción descrita en vite.config.ts y main.ts, usando el archivo incluido src/locales/en.json y observando la salida de recarga de página de Vite. Rastrea cómo el plugin gestiona las importaciones estáticas del bundle y los cambios en los archivos de locale; se considera terminado cuando editar el archivo JSON actualiza el texto traducido mediante HMR sin refrescar la página.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

good first issue
Reporting a bug?

Using "@intlify/unplugin-vue-i18n": "^1.2.0"

I've follow README.md's guide to setup my project like reproduction section.
And I put locale files to src/locales/en.json, i18n works fine but dev server will refresh page everytime when I update the json file.
And I got output like this:

11:39:17 AM [vite] page reload src/locales/en.json

Is my setting wrong? Thanks for help!

Expected behavior

When I saving only the text section update.

Reproduction
// vite.config.ts
export default defineConfig({
  plugins: [
    vue(),
    vueJsx(),
    UnoCSS(),
    VueI18nPlugin({
      include: [path.resolve(__dirname, './src/locales/**')],
    }),
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url)),
    },
  },
});
// main.ts
import messages from '@intlify/unplugin-vue-i18n/messages';

import App from './App.vue';

const app = createApp(App);

app.use(createPinia());
app.use(
  createI18n({
    legacy: false,
    locale: 'en',
    globalInjection: true,
    fallbackLocale: 'en',
    messages,
  }),
);
Issue Package

unplugin-vue-i18n

System Info
System:
    OS: macOS 13.4.1
    CPU: (8) arm64 Apple M1
    Memory: 96.44 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 18.17.0 - /usr/local/bin/node
    npm: 9.6.7 - /usr/local/bin/npm
    pnpm: 8.6.12 - ~/.npm-global/bin/pnpm
  Browsers:
    Chrome: 116.0.5845.187
    Safari: 16.5.2
  npmPackages:
    @intlify/unplugin-vue-i18n: ^1.2.0 => 1.2.0 
    vite: ^4.3.9 => 4.4.7 
    vue: ^3.3.4 => 3.3.4 
    vue-i18n: ^9.3.0 => 9.3.0
Screenshot

No response

Additional context

No response

Validations
  • Read the Contributing Guidelines.
  • Read the README
  • Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
  • Check that this is a concrete bug. For Q&A open a GitHub Discussion.
Lenguaje dominante
TypeScript
Estrellas
269
Forks
45
Merge medio
3 h 54 min
PR fusionados (30 d)
57

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de intlify/bundle-tools

Todos los issues de intlify/bundle-tools

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.