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 47147685_60c2_42a0_ee05_26d072a377c7["compileModule()"] 5a1c51f2_4876_fec0_df27_1d6ef59f031a["create-bundle-runner.ts"] 47147685_60c2_42a0_ee05_26d072a377c7 -->|defined in| 5a1c51f2_4876_fec0_df27_1d6ef59f031a e142ddd7_db7e_6e31_6600_9ceabc3f3fa2["createBundleRunner()"] e142ddd7_db7e_6e31_6600_9ceabc3f3fa2 -->|calls| 47147685_60c2_42a0_ee05_26d072a377c7 style 47147685_60c2_42a0_ee05_26d072a377c7 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