关于静态和动态传参。

来源:1-3 组件间传值及传值校验

KaFe_Ming

2021-07-06 22:07:07

静态传参之后不能在data方法中修改传入的值吗? 静态的传参 传一次就等于传死了吗 这个数据。
动态传参如果传的是字符串,应该也能正常在data里修改吧?然后typeof检测也是字符串类型。

写回答

1回答

好帮手慕久久

2021-07-07

同学你好,解答如下:

1、父组件给子组件传参时,不论是传静态值,还是动态值,子组件都不能直接修改props中的值,因为props中的值是只读的,例如:

http://img.mukewang.com/climg/60e50a4e098fcda708590559.jpg


http://img.mukewang.com/climg/60e5080b095774db13630261.jpg


如果子组件想修改该值,则需要在data中复制一份数据,然后修改data中的数据,例如:

http://img.mukewang.com/climg/60e5093709f82e7709220698.jpg

http://img.mukewang.com/climg/60e508990ad96f0108500232.jpg

动态值同理,同学可以参考上面,自己写个demo。

2、对于父组件,如果传一个静态值,那么就是传了一个固定不变的值给子组件,父组件没法动态更改该值

http://img.mukewang.com/climg/60e5095109c3971c05950170.jpg

3、父组件如果传了一个动态值给子组件,父组件可以动态修改该值,但是子组件不能直接修改,可参考1中的回复。如果传了一个字符串,子组件如果直接使用props中接收到的值,那么typeof 就是字符串类型。如果子组件想修改该值,则参考1中的回复。

祝学习愉快!

0

0 学习 · 15276 问题

查看课程