genConfig() — vue Function Reference
Architecture documentation for the genConfig() function in config.js from the vue codebase.
Entity Profile
Dependency Diagram
graph TD cf05632f_cbb8_f1a3_99c1_a6fe5a8ea794["genConfig()"] d66985c1_7cf4_f202_15b5_38eaf187d438["config.js"] cf05632f_cbb8_f1a3_99c1_a6fe5a8ea794 -->|defined in| d66985c1_7cf4_f202_15b5_38eaf187d438 09a8509b_1464_c037_8eb8_7c31a75a04cd["resolve()"] cf05632f_cbb8_f1a3_99c1_a6fe5a8ea794 -->|calls| 09a8509b_1464_c037_8eb8_7c31a75a04cd style cf05632f_cbb8_f1a3_99c1_a6fe5a8ea794 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
scripts/config.js lines 228–298
function genConfig(name) {
const opts = builds[name]
const isTargetingBrowser = !(
opts.transpile === false || opts.format === 'cjs'
)
// console.log('__dir', __dirname)
const config = {
input: opts.entry,
external: opts.external,
plugins: [
alias({
entries: Object.assign({}, aliases, opts.alias)
}),
ts({
tsconfig: path.resolve(__dirname, '../', 'tsconfig.json'),
cacheRoot: path.resolve(__dirname, '../', 'node_modules/.rts2_cache'),
tsconfigOverride: {
compilerOptions: {
// if targeting browser, target es5
// if targeting node, es2017 means Node 8
target: isTargetingBrowser ? 'es5' : 'es2017'
},
include: isTargetingBrowser ? ['src'] : ['src', 'packages/*/src'],
exclude: ['test', 'test-dts']
}
})
].concat(opts.plugins || []),
output: {
file: opts.dest,
format: opts.format,
banner: opts.banner,
name: opts.moduleName || 'Vue',
exports: 'auto'
},
onwarn: (msg, warn) => {
if (!/Circular/.test(msg)) {
warn(msg)
}
}
}
// console.log('pluging', config.plugins)
// built-in vars
const vars = {
__VERSION__: version,
__DEV__: `process.env.NODE_ENV !== 'production'`,
__TEST__: false,
__GLOBAL__: opts.format === 'umd' || name.includes('browser')
}
// feature flags
Object.keys(featureFlags).forEach(key => {
vars[`process.env.${key}`] = featureFlags[key]
})
// build-specific env
if (opts.env) {
vars['process.env.NODE_ENV'] = JSON.stringify(opts.env)
vars.__DEV__ = opts.env !== 'production'
}
vars.preventAssignment = true
config.plugins.push(replace(vars))
Object.defineProperty(config, '_name', {
enumerable: false,
value: name
})
return config
}
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does genConfig() do?
genConfig() is a function in the vue codebase, defined in scripts/config.js.
Where is genConfig() defined?
genConfig() is defined in scripts/config.js at line 228.
What does genConfig() call?
genConfig() calls 1 function(s): resolve.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free