Home / Function/ genCheckboxModel() — vue Function Reference

genCheckboxModel() — vue Function Reference

Architecture documentation for the genCheckboxModel() function in model.ts from the vue codebase.

Entity Profile

Dependency Diagram

graph TD
  2a02b0ab_9034_a2f9_d310_cda75957f53b["genCheckboxModel()"]
  14d3bb86_7a8d_fa98_8bf9_6d426675527b["model()"]
  14d3bb86_7a8d_fa98_8bf9_6d426675527b -->|calls| 2a02b0ab_9034_a2f9_d310_cda75957f53b
  2e03f8d2_4a5a_f1cd_1d7b_db95ba63549e["getBindingAttr()"]
  2a02b0ab_9034_a2f9_d310_cda75957f53b -->|calls| 2e03f8d2_4a5a_f1cd_1d7b_db95ba63549e
  4760a472_5347_3554_a7fe_3e7d21471a37["addProp()"]
  2a02b0ab_9034_a2f9_d310_cda75957f53b -->|calls| 4760a472_5347_3554_a7fe_3e7d21471a37
  754feb41_b555_757e_313c_0f0096cdc970["addHandler()"]
  2a02b0ab_9034_a2f9_d310_cda75957f53b -->|calls| 754feb41_b555_757e_313c_0f0096cdc970
  4f4016d4_c2a9_540e_d1fd_9dabe55a1d29["genAssignmentCode()"]
  2a02b0ab_9034_a2f9_d310_cda75957f53b -->|calls| 4f4016d4_c2a9_540e_d1fd_9dabe55a1d29
  style 2a02b0ab_9034_a2f9_d310_cda75957f53b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

src/platforms/web/compiler/directives/model.ts lines 66–105

function genCheckboxModel(
  el: ASTElement,
  value: string,
  modifiers?: ASTModifiers | null
) {
  const number = modifiers && modifiers.number
  const valueBinding = getBindingAttr(el, 'value') || 'null'
  const trueValueBinding = getBindingAttr(el, 'true-value') || 'true'
  const falseValueBinding = getBindingAttr(el, 'false-value') || 'false'
  addProp(
    el,
    'checked',
    `Array.isArray(${value})` +
      `?_i(${value},${valueBinding})>-1` +
      (trueValueBinding === 'true'
        ? `:(${value})`
        : `:_q(${value},${trueValueBinding})`)
  )
  addHandler(
    el,
    'change',
    `var $$a=${value},` +
      '$$el=$event.target,' +
      `$$c=$$el.checked?(${trueValueBinding}):(${falseValueBinding});` +
      'if(Array.isArray($$a)){' +
      `var $$v=${number ? '_n(' + valueBinding + ')' : valueBinding},` +
      '$$i=_i($$a,$$v);' +
      `if($$el.checked){$$i<0&&(${genAssignmentCode(
        value,
        '$$a.concat([$$v])'
      )})}` +
      `else{$$i>-1&&(${genAssignmentCode(
        value,
        '$$a.slice(0,$$i).concat($$a.slice($$i+1))'
      )})}` +
      `}else{${genAssignmentCode(value, '$$c')}}`,
    null,
    true
  )
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does genCheckboxModel() do?
genCheckboxModel() is a function in the vue codebase.
What does genCheckboxModel() call?
genCheckboxModel() calls 4 function(s): addHandler, addProp, genAssignmentCode, getBindingAttr.
What calls genCheckboxModel()?
genCheckboxModel() is called by 1 function(s): model.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free