bindObjectProps() — vue Function Reference
Architecture documentation for the bindObjectProps() function in bind-object-props.ts from the vue codebase.
Entity Profile
Dependency Diagram
graph TD 61f71f55_0ea8_be8f_29b7_c4adc44c3f3e["bindObjectProps()"] 07472ac5_5ae5_c984_c924_e9507f884ceb["bind-object-props.ts"] 61f71f55_0ea8_be8f_29b7_c4adc44c3f3e -->|defined in| 07472ac5_5ae5_c984_c924_e9507f884ceb style 61f71f55_0ea8_be8f_29b7_c4adc44c3f3e fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
src/core/instance/render-helpers/bind-object-props.ts lines 17–59
export function bindObjectProps(
data: any,
tag: string,
value: any,
asProp: boolean,
isSync?: boolean
): VNodeData {
if (value) {
if (!isObject(value)) {
__DEV__ &&
warn('v-bind without argument expects an Object or Array value', this)
} else {
if (isArray(value)) {
value = toObject(value)
}
let hash
for (const key in value) {
if (key === 'class' || key === 'style' || isReservedAttribute(key)) {
hash = data
} else {
const type = data.attrs && data.attrs.type
hash =
asProp || config.mustUseProp(tag, type, key)
? data.domProps || (data.domProps = {})
: data.attrs || (data.attrs = {})
}
const camelizedKey = camelize(key)
const hyphenatedKey = hyphenate(key)
if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {
hash[key] = value[key]
if (isSync) {
const on = data.on || (data.on = {})
on[`update:${key}`] = function ($event) {
value[key] = $event
}
}
}
}
}
}
return data
}
Domain
Subdomains
Source
Frequently Asked Questions
What does bindObjectProps() do?
bindObjectProps() is a function in the vue codebase, defined in src/core/instance/render-helpers/bind-object-props.ts.
Where is bindObjectProps() defined?
bindObjectProps() is defined in src/core/instance/render-helpers/bind-object-props.ts at line 17.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free