NormalizedPropsOptions
>()
+function validatePropName(key: string) {
+ if (key[0] !== '$') {
+ return true
+ } else if (__DEV__) {
+ warn(`Invalid prop name: "${key}" is a reserved property.`)
+ }
+ return false
+}
+
function normalizePropsOptions(
raw: ComponentPropsOptions | void
): NormalizedPropsOptions {
warn(`props must be strings when using array syntax.`, raw[i])
}
const normalizedKey = camelize(raw[i])
- if (normalizedKey[0] !== '$') {
+ if (validatePropName(normalizedKey)) {
options[normalizedKey] = EMPTY_OBJ
- } else if (__DEV__) {
- warn(`Invalid prop name: "${normalizedKey}" is a reserved property.`)
}
}
} else {
}
for (const key in raw) {
const normalizedKey = camelize(key)
- if (normalizedKey[0] !== '$') {
+ if (validatePropName(normalizedKey)) {
const opt = raw[key]
const prop: NormalizedProp = (options[normalizedKey] =
isArray(opt) || isFunction(opt) ? { type: opt } : opt)
needCastKeys.push(normalizedKey)
}
}
- } else if (__DEV__) {
- warn(`Invalid prop name: "${normalizedKey}" is a reserved property.`)
}
}
}