model() — vue Function Reference
Architecture documentation for the model() function in model.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD d13f0020_9aae_98ba_33de_e0cf5575ddfd["model()"] 15390ccf_ab46_d508_a1ed_b3b87cc03914["model.ts"] d13f0020_9aae_98ba_33de_e0cf5575ddfd -->|defined in| 15390ccf_ab46_d508_a1ed_b3b87cc03914 99db7e7c_6239_13b3_049e_1845760cbde0["genSelect()"] d13f0020_9aae_98ba_33de_e0cf5575ddfd -->|calls| 99db7e7c_6239_13b3_049e_1845760cbde0 e9e6da16_4034_c1e3_9eac_147da8d3b0bf["genCheckboxModel()"] d13f0020_9aae_98ba_33de_e0cf5575ddfd -->|calls| e9e6da16_4034_c1e3_9eac_147da8d3b0bf fb457e23_0ab3_279f_682a_3810510d757d["genRadioModel()"] d13f0020_9aae_98ba_33de_e0cf5575ddfd -->|calls| fb457e23_0ab3_279f_682a_3810510d757d 811f9f99_b9dc_79e8_ddcc_7bc64cf6b8f6["genDefaultModel()"] d13f0020_9aae_98ba_33de_e0cf5575ddfd -->|calls| 811f9f99_b9dc_79e8_ddcc_7bc64cf6b8f6 style d13f0020_9aae_98ba_33de_e0cf5575ddfd fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
src/platforms/web/compiler/directives/model.ts lines 13–64
export default function model(
el: ASTElement,
dir: ASTDirective,
_warn: Function
): boolean | undefined {
warn = _warn
const value = dir.value
const modifiers = dir.modifiers
const tag = el.tag
const type = el.attrsMap.type
if (__DEV__) {
// inputs with type="file" are read only and setting the input's
// value will throw an error.
if (tag === 'input' && type === 'file') {
warn(
`<${el.tag} v-model="${value}" type="file">:\n` +
`File inputs are read only. Use a v-on:change listener instead.`,
el.rawAttrsMap['v-model']
)
}
}
if (el.component) {
genComponentModel(el, value, modifiers)
// component v-model doesn't need extra runtime
return false
} else if (tag === 'select') {
genSelect(el, value, modifiers)
} else if (tag === 'input' && type === 'checkbox') {
genCheckboxModel(el, value, modifiers)
} else if (tag === 'input' && type === 'radio') {
genRadioModel(el, value, modifiers)
} else if (tag === 'input' || tag === 'textarea') {
genDefaultModel(el, value, modifiers)
} else if (!config.isReservedTag(tag)) {
genComponentModel(el, value, modifiers)
// component v-model doesn't need extra runtime
return false
} else if (__DEV__) {
warn(
`<${el.tag} v-model="${value}">: ` +
`v-model is not supported on this element type. ` +
"If you are working with contenteditable, it's recommended to " +
'wrap a library dedicated for that purpose inside a custom component.',
el.rawAttrsMap['v-model']
)
}
// ensure runtime directive metadata
return true
}
Domain
Subdomains
Source
Frequently Asked Questions
What does model() do?
model() is a function in the vue codebase, defined in src/platforms/web/compiler/directives/model.ts.
Where is model() defined?
model() is defined in src/platforms/web/compiler/directives/model.ts at line 13.
What does model() call?
model() calls 4 function(s): genCheckboxModel, genDefaultModel, genRadioModel, genSelect.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free