MCPcopy Index your code
hub / github.com/ygs-code/vue / genAssignmentCode

Function genAssignmentCode

vue.js:9929–9943  ·  view source on GitHub ↗

* Cross-platform codegen helper for generating v-model value assignment code. * 用于生成v-model值赋值代码的跨平台codegen助手。 * 创赋值代码,转义字符串对象拆分字符串对象 把后一位key分离出来 * * 返回 key"=" value * 或者 $set(object[info],key,value)

(
        value, //key
        assignment //值
    )

Source from the content-addressed store, hash-verified

9927 * 或者 $set(object[info],key,value)
9928 */
9929 function genAssignmentCode(
9930 value, //key
9931 assignment //值
9932 ) {
9933
9934 //转义字符串对象拆分字符串对象 把后一位key分离出来
9935 // 两种情况分析1 如果数据是object.info.name的情况下 则返回是 {exp: "object.info",key: "name"}
9936 //如果数据是object[info][name]的情况下 则返回是 {exp: "object[info]",key: "name"}
9937 var res = parseModel(value);
9938 if (res.key === null) {
9939 return (value + "=" + assignment) // 没有key就是当前值,返回当前值的key
9940 } else {
9941 return ("$set(" + (res.exp) + ", " + (res.key) + ", " + assignment + ")") // 返回更新值 '$set(object[info],key,value)'
9942 }
9943 }
9944
9945 /**
9946 * Parse a v-model expression into a base path and a final key segment.

Callers 6

genComponentModelFunction · 0.85
genCheckboxModelFunction · 0.85
genRadioModelFunction · 0.85
genSelectFunction · 0.85
genDefaultModelFunction · 0.85
processAttrsFunction · 0.85

Calls 1

parseModelFunction · 0.85

Tested by

no test coverage detected