SyntaxError:分配给右值

Posted

技术标签:

【中文标题】SyntaxError:分配给右值【英文标题】:SyntaxError: Assigning to rvalue 【发布时间】:2022-01-14 14:17:01 【问题描述】:

我在tbody中有以下代码

<tr v-for="item in apiResponse.costGroups" :key="item.process_receipt_id">
    <td class="pl-0 pr-0">
        <el-input type="text" v-model="getCostGroupProp(item, 'process_receipt_date')" class="no-border-input-datatable"/>
    </td>
</tr>

methods 对象中,我有以下代码。

methods: 
  getCostGroupProp(costGroup, prop) 
    return costGroup[prop]
  

我收到以下错误:

SyntaxError: 赋值给右值

但是当我编写这样的 html 代码时它工作得很好。

<tr v-for="item in apiResponse.costGroups" :key="item.process_receipt_id">
    <td class="pl-0 pr-0">
        <el-input type="text" v-model="item.process_receipt_date" class="no-border-input-datatable"/>
    </td>
</tr>

我在 *** 上的一个问题中读到,问题是我们在 v-model 中不能有数字。但是,我在 v-model 中没有数字,并且代码在第二种方法和相同的属性集下也可以正常工作,所以我不明白为什么。

谁能帮我理解为什么会这样?我很感激。谢谢!

【问题讨论】:

getCostGroupProp(item, 'process_receipt_date') = newInputValue 不是有效的 javascript,这就是您收到此错误的原因。 @CherryDT 很有趣,我认为它会像计算属性或数据属性一样返回值 【参考方案1】:

不要将 v-model 分配给方法。 v-model 是双向绑定。使用数据属性或计算属性(使用 set/get 方法)。

【讨论】:

以上是关于SyntaxError:分配给右值的主要内容,如果未能解决你的问题,请参考以下文章

在同一行中声明和分配对象一些右值

将右值引用分配给左值时发生了啥?

将此指针分配给对指针的右值引用

无法调用或分配具有右值引用作为参数的 std::function (Visual C++)

SyntaxError - 不能分配给操作员

SyntaxError:无法分配给函数调用(Python)[关闭]