解决uniapp Prop being mutated: "placeholder"报错

想要解决的问题:封装一个组件A,组件A的placeholder有默认值,但又有几处需要从父组件传入自定义值,即想要父组件有传值时使用父组件,没有传值使用默认(默认有分情况或者使用语言包,‘default’用不了),本文不解决Prop双向绑定。
报错信息:
Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop’s value. Prop being mutated: “placeholder”

报错原因:修改了父组件传值,但传入的prop中的值是不允许改变的
解决办法:使用两个变量
组件A:

<template>
..
    <view style="flex: 1;">
      <input
        :placeholder="placeholder"
      />
    </view>
 ...
</template>

<script>
export default {
  props: {
  	'placeholderValue':{			//传值为placeholderValue,之前出错就是使用placeholder
  		type:String,
  		default:''
  	},

  },
  data() {
    return {
			placeholder: this.placeholderValue,	//将传进来的参数赋值
    };
  },
  created() {
		if(this.placeholder.length <= 0){		//如果传进来的值为空(长度为0),就是使用默认。 原先可以在props default 赋值,但使用了语言包,调用不到
			this.placeholder = this.page_lang.common.base.password_format;
		}
	  
  },
......

调用组件A

<A    :placeholderValue=‘请输入...’'></A>

出错总结: 不清楚prop 和 :placeholder=“placeholder” 用法

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
位置变异 我不太理解你的意思。你可以再解释一下吗? 我不明白你的意思。 很高兴为您服务!placement是指将物体放置在某个位置上,这可以通过突变来实现。 对“placement”的变异来说,它的意义是把某些元素放置在特定的位置。 很高兴为您提供帮助。“placement”一般指把某事物放置在特定的位置。 我不明白你的意思。 我不太明白你的意思,你能再解释一下吗? 我不太清楚什么是"placement",但我知道“prop being mutated”是指属性被突变。 我不知道你在说什么。 我们可以用“放置”来描述这一变化过程。 我不太明白您的意思,请再说明一下您的问题? 我不太清楚你的意思,你能再说一遍吗? 把“placement”转化为变体的话,可以说是“安置”或“放置”。 我们可以把"placement"变成一种新的技术或者技能。 你想问的是什么? 我不太明白你的意思。 我不太明白你的意思。你能再说明白一点吗? 位置。 我想你是在询问“安置”的意思? 我不太明白你的意思。 我不太明白你的意思。 我不知道你在说什么,你可以请你再详细解释一下吗? 你想说的是放置? 我不太清楚你所指的“placement”,可以再详细解释一下吗? 我不太了解"placement"是什么意思。你能解释一下吗? 位置。 你是在询问放置的意思吗? 这个词的意思是放置、放置位置或安置。 放置。 我不太明白你的意思。你能再说明白一点吗? 位置。 我不太明白你的意思。这个错误信息通常是在编程中使用了不可变对象或常量,试图更改它们的属性或值导致的。在这种情况下,错误信息指出尝试更改名为“placement”的属性,但该属性被视为不可变对象。 解决此问题的方法可能因编程语言而异,但通常的解决方法是使用可变对象或数据结构,或者通过更改代码逻辑来避免更改不可变对象的属性。需要进一步查看代码和上下文才能提供更具体的建议。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值