Home / Function/ virtualPlugin() — vite Function Reference

virtualPlugin() — vite Function Reference

Architecture documentation for the virtualPlugin() function in vite.config.ts from the vite codebase.

Entity Profile

Dependency Diagram

graph TD
  22df12e6_cf65_6140_db54_9f0f6faf5d7e["virtualPlugin()"]
  1881247f_497c_87d7_8eb6_75c8f50658ae["vite.config.ts"]
  22df12e6_cf65_6140_db54_9f0f6faf5d7e -->|defined in| 1881247f_497c_87d7_8eb6_75c8f50658ae
  style 22df12e6_cf65_6140_db54_9f0f6faf5d7e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

playground/hmr/vite.config.ts lines 64–92

function virtualPlugin(): Plugin {
  let num = 0
  return {
    name: 'virtual-file',
    resolveId(id) {
      if (id.startsWith('virtual:file')) {
        return '\0' + id
      }
    },
    load(id) {
      if (id.startsWith('\0virtual:file')) {
        return `\
import { virtual as _virtual } from "/importedVirtual.js";
export const virtual = _virtual + '${num}';`
      }
    },
    configureServer(server) {
      server.environments.client.hot.on('virtual:increment', async (suffix) => {
        const mod = await server.environments.client.moduleGraph.getModuleById(
          '\0virtual:file' + (suffix || ''),
        )
        if (mod) {
          num++
          server.environments.client.reloadModule(mod)
        }
      })
    },
  }
}

Domain

Subdomains

Frequently Asked Questions

What does virtualPlugin() do?
virtualPlugin() is a function in the vite codebase, defined in playground/hmr/vite.config.ts.
Where is virtualPlugin() defined?
virtualPlugin() is defined in playground/hmr/vite.config.ts at line 64.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free