compileModule() — vue Function Reference
Architecture documentation for the compileModule() function in create-bundle-runner.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD 708af6a4_c04f_a7d6_fee2_6bfcaaf9aea3["compileModule()"] e99f1014_4151_d755_aee1_9fb410ccbf8a["create-bundle-runner.ts"] 708af6a4_c04f_a7d6_fee2_6bfcaaf9aea3 -->|defined in| e99f1014_4151_d755_aee1_9fb410ccbf8a 6a9fa059_9fc3_cee8_cd4d_4e2ad5f3f96e["createBundleRunner()"] 6a9fa059_9fc3_cee8_cd4d_4e2ad5f3f96e -->|calls| 708af6a4_c04f_a7d6_fee2_6bfcaaf9aea3 style 708af6a4_c04f_a7d6_fee2_6bfcaaf9aea3 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/server-renderer/src/bundle-renderer/create-bundle-runner.ts lines 27–77
function compileModule(files, basedir, runInNewContext) {
const compiledScripts = {}
const resolvedModules = {}
function getCompiledScript(filename) {
if (compiledScripts[filename]) {
return compiledScripts[filename]
}
const code = files[filename]
const wrapper = NativeModule.wrap(code)
const script = new vm.Script(wrapper, {
filename,
displayErrors: true
})
compiledScripts[filename] = script
return script
}
function evaluateModule(filename, sandbox, evaluatedFiles = {}) {
if (evaluatedFiles[filename]) {
return evaluatedFiles[filename]
}
const script = getCompiledScript(filename)
const compiledWrapper =
runInNewContext === false
? script.runInThisContext()
: script.runInNewContext(sandbox)
const m = { exports: {} }
const r = file => {
file = path.posix.join('.', file)
if (files[file]) {
return evaluateModule(file, sandbox, evaluatedFiles)
} else if (basedir) {
return require(resolvedModules[file] ||
(resolvedModules[file] = resolve.sync(file, { basedir })))
} else {
return require(file)
}
}
compiledWrapper.call(m.exports, m.exports, r, m)
const res = Object.prototype.hasOwnProperty.call(m.exports, 'default')
? // @ts-expect-error
m.exports.default
: m.exports
evaluatedFiles[filename] = res
return res
}
return evaluateModule
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does compileModule() do?
compileModule() is a function in the vue codebase, defined in packages/server-renderer/src/bundle-renderer/create-bundle-runner.ts.
Where is compileModule() defined?
compileModule() is defined in packages/server-renderer/src/bundle-renderer/create-bundle-runner.ts at line 27.
What calls compileModule()?
compileModule() is called by 1 function(s): createBundleRunner.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free