Meituan-Dianping/mpvue · error

v-bind without argument expects an Object or Array value

Error message

v-bind without argument expects an Object or Array value

What it means

Raised by bindObjectProps, the render helper for v-bind="value" object syntax. The expression is truthy but isObject(value) fails — it is a primitive like a string, number or boolean rather than an Object or Array. The helper expects a map of attribute/prop names to values (an Array is also accepted and merged with toObject); any other truthy value is rejected and its bindings are dropped.

Source

Thrown at src/core/instance/render-helpers/bind-object-props.js:24

  warn,
  isObject,
  toObject,
  isReservedAttribute
} from 'core/util/index'

/**
 * Runtime helper for merging v-bind="object" into a VNode's data.
 */
export function bindObjectProps (
  data: any,
  tag: string,
  value: any,
  asProp: boolean,
  isSync?: boolean
): VNodeData {
  if (value) {
    if (!isObject(value)) {
      process.env.NODE_ENV !== 'production' && warn(
        'v-bind without argument expects an Object or Array value',
        this
      )
    } else {
      if (Array.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)

View on GitHub (pinned to 6c5d78ee04)

Solutions

  1. Pass an object of attributes: v-bind="{ id: itemId, href: url }"
  2. Verify the bound expression evaluates to an object (or array of objects) at render time — check defaults like '' or 0 on the source variable
  3. Use single-argument v-bind:attr="value" for binding one attribute
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown at src/core/instance/render-helpers/bind-object-props.js:24 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of Meituan-Dianping/mpvue@6c5d78ee04 (2026-09-02). Data as JSON: /api/errors/673df920f5251f75. Report an issue: GitHub.