Skip to content

组件的字面量prop的监听被意外触发 #10807

Description

@inside5545

Vue version

3.4.21

Link to minimal reproduction

https://play.vuejs.org/#eNqNU01v00AQ/SvLXpIon005BSdSU3qAA1TQ414ce5O42GvLu06CLEsckCoBUqkQQgoHBIiWQ5AQXAIk/8ZOyql/gdl1kgZEP267897MvtmZF+Itzyv1AoprWOOGb3kCcSoCr0GY5XiuL1CIfNpGEWr7roMyQM2soO2uZZsLoFTedh1VKnOLMMIMl3GBWqgu07PVHATbATOE5TLUoaKZzYWEIQBF4DPEaB/d1gXN5giLCAMJe5ZD3UBks7l6QzFbpZ5uBxTl6xuVCrAK1UqlAnStnOoGxXAR1PFsKAQ3hLQbxSJKpq/MePwzOZjOXn9Nph+SyeF8+DT58mY+Oo7H384mL+If7+LJ8PTkODk86uvC6KJiMc1PG6x5vusV9TrBYbdb26huFsxaJu0hExG8wFuAtwhuaGWVdS7g9ORjMnkS//oUj5/Pvn/+ffBsVV/ClzySvnHxE9et07qqhPzFtZ/DBSw4DLBtdUr73GWwHGoEBBswY8um/n1PDpITXEMKkZhu227/rooJP6CFZdzoUuPRf+L7fCBjBO/6lFO/RwleYUL3ofkU3nl4jw7gvAId1wxsYF8CPqDctQOpMaU1A2aC7DWeUntH7bHFOnt8ZyAo48umpFDJjBSfYFhrud4XtX4ud7N0U+XBgsIvLi3xr7uQrbMOTEJAmXWnpdtXAMes+23NT3KGHDxl0rbF6K68aUqFBLZqSGePl7fm4hY1pKnSdKMuzShdo15S5lIlSyq/sDCbkVotn4fsKxxmWj11gCP3dLY4I1h66ab526Pk5Wg2eg/WO5sMwxAZKIK/UfzyKkErp2X+XsLoD6uzn9k=

Steps to reproduce

一个组件的propA使用字面量对象形式直接在template中配置,当另一个propB变化,可能会触发propA的监听(如果propA存在函数成员,则会触发)。
现在问题是,如果propA的一个成员的值不是函数,而是一个函数样子的字符串,也会触发,比如:propA="'getXX()'"

What is expected?

:propA="'getXX()'"时,
propA不会因为propB的改变而触发监听

What is actually happening?

:propA="'getXX()'"时,
propA因为propB的改变而触发了监听

System Info

No response

Any additional comments?

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions