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

Aperta
#299 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
typescript, vite

Direzione di ricerca

Inizia eseguendo la riproduzione descritta in vite.config.ts e main.ts, usando il file incluso src/locales/en.json e osservando l'output del ricaricamento della pagina di Vite. Traccia il modo in cui il plugin gestisce gli import statici del bundle e le modifiche ai file di locale; il lavoro è completato quando la modifica del file JSON aggiorna il testo tradotto tramite HMR senza ricaricare la pagina.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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.
Lingua principale
TypeScript
Stelle
269
Fork
45
Merge medio
3h 54m
PR unite (30g)
57

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di intlify/bundle-tools

Tutte le issue di intlify/bundle-tools

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.