parseModel() — vue Function Reference
Architecture documentation for the parseModel() function in model.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD 07b38d85_6530_a99f_04cd_e166fb182374["parseModel()"] 1f566fbb_35e7_982c_1234_287d1ad7f72c["model.ts"] 07b38d85_6530_a99f_04cd_e166fb182374 -->|defined in| 1f566fbb_35e7_982c_1234_287d1ad7f72c bf9ddf1c_ef97_a050_8f03_7e20fe6e8f1c["genAssignmentCode()"] bf9ddf1c_ef97_a050_8f03_7e20fe6e8f1c -->|calls| 07b38d85_6530_a99f_04cd_e166fb182374 0eec1a61_1577_da69_4ebc_4d92bfbee331["eof()"] 07b38d85_6530_a99f_04cd_e166fb182374 -->|calls| 0eec1a61_1577_da69_4ebc_4d92bfbee331 7a1c3810_086b_133b_165e_a80c336937d2["next()"] 07b38d85_6530_a99f_04cd_e166fb182374 -->|calls| 7a1c3810_086b_133b_165e_a80c336937d2 6d37d5b1_856a_f66b_a046_b4320271029b["isStringStart()"] 07b38d85_6530_a99f_04cd_e166fb182374 -->|calls| 6d37d5b1_856a_f66b_a046_b4320271029b fb1e6895_8d14_a0f0_a2b9_e98147e8cdda["parseString()"] 07b38d85_6530_a99f_04cd_e166fb182374 -->|calls| fb1e6895_8d14_a0f0_a2b9_e98147e8cdda cc1bb1f5_7aa4_946a_b64d_301753211a14["parseBracket()"] 07b38d85_6530_a99f_04cd_e166fb182374 -->|calls| cc1bb1f5_7aa4_946a_b64d_301753211a14 style 07b38d85_6530_a99f_04cd_e166fb182374 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
src/compiler/directives/model.ts lines 67–105
export function parseModel(val: string): ModelParseResult {
// Fix https://github.com/vuejs/vue/pull/7730
// allow v-model="obj.val " (trailing whitespace)
val = val.trim()
len = val.length
if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {
index = val.lastIndexOf('.')
if (index > -1) {
return {
exp: val.slice(0, index),
key: '"' + val.slice(index + 1) + '"'
}
} else {
return {
exp: val,
key: null
}
}
}
str = val
index = expressionPos = expressionEndPos = 0
while (!eof()) {
chr = next()
/* istanbul ignore if */
if (isStringStart(chr)) {
parseString(chr)
} else if (chr === 0x5b) {
parseBracket(chr)
}
}
return {
exp: val.slice(0, expressionPos),
key: val.slice(expressionPos + 1, expressionEndPos)
}
}
Domain
Subdomains
Defined In
Called By
Source
Frequently Asked Questions
What does parseModel() do?
parseModel() is a function in the vue codebase, defined in src/compiler/directives/model.ts.
Where is parseModel() defined?
parseModel() is defined in src/compiler/directives/model.ts at line 67.
What does parseModel() call?
parseModel() calls 5 function(s): eof, isStringStart, next, parseBracket, parseString.
What calls parseModel()?
parseModel() is called by 1 function(s): genAssignmentCode.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free