当前位置: 首页> 新闻> 焦点 > 推广方式和推广渠道的区别_出口跨境电商平台有哪些_百度账号出售平台_沈阳专业网站seo推广

推广方式和推广渠道的区别_出口跨境电商平台有哪些_百度账号出售平台_沈阳专业网站seo推广

时间:2025/9/10 20:39:43来源:https://blog.csdn.net/weixin_39593730/article/details/143949338 浏览次数:1次
推广方式和推广渠道的区别_出口跨境电商平台有哪些_百度账号出售平台_沈阳专业网站seo推广

特性

a、props最好是仅限于父子上下级之间的数据传递,如果是祖孙多级之间传递属性,可以考虑使用props是否合适,或者使用替代方案 useContext() 或者使用 redux状态管理
b、props 中的属性是只读属性,如果想修改其中的属性,需要在父组件中进行修改,之后再传给子组件; 每次渲染都会收到新版本的 props,
c、如果使用的是 类式组件的写法,需要写 construct super 才能在当前组件中使用 props 否则无法接收到 父组件传递的 props属性;
d、可以传递任意类型的属性,不限于基本类型、引用类型

1、Props基本用法: 主要以函数式写法说明,类式组件官网已不建议使用

    // 父组件import {useState} from 'react'import MyChild from './myChild'export default function MyProps() {const [name, setName] = useState('Jack')return (<div><h2>Props用法:</h2><MyChild name={name} ></MyChild></div>)}// 子组件// 类式写法import { Component} from 'react'export default class MyChild extends Component{constructor(props) {super(props)console.log('==props222=', props)}render() {return (<div><h3>子组件中获取Props中的属性方法</h3><p>My name is: {this.props.name}</p></div> )}}// 函数式写法export default function MyChild(props) {console.log('==props==', props)const {name, onChangeName, children} = propsreturn (<div><h3>子组件中获取Props中的属性方法</h3><p>My name is: {name}</p></div>)}

2、Props传递默认值

// 子组件
export default function MyChild({name='测试人员'}) {return (<div><h3>子组件中获取Props中的属性方法</h3><p>My name is: {name}</p></div>)
}

3、Props传递事件

    // 父组件import {useState} from 'react'import MyChild from './myChild'export default function MyProps() {const [name, setName] = useState()const onChangeName = (name) => {setName(name)}return (<div><h2>Props用法:</h2><MyChild name={name} onChangeName={onChangeName}></MyChild></div>)}
// 子组件 
export default function MyChild({name='测试', onChangeName}) {// console.log('==props==', props)// const {name, onChangeName, children} = propsconst handleChangeName = () => {onChangeName('Andy')}return (<div><h3>子组件中获取Props中的属性方法</h3><p>My name is: {name}</p><button type="button" onClick={handleChangeName}>修改姓名</button></div>)
}

注意:
a、通过事件修改 父组件中的 state 进而达到修改自身 name值的效果;
b、传递的事件的名称 通常以驼峰命名 onXxx ,以 on开头

4、Props传递children

// 父组件
import React, {useState} from 'react'
import MyChild from './myChild'
export default function MyProps() {const [name, setName] = useState()const onChangeName = (name) => {setName(name)}return (<div><h2>Props用法:</h2><MyChild name={name} onChangeName={onChangeName}><p>描述信息 通过 children 传入到 自组中</p>{<><div>123</div><h3>{456}</h3>{[678]}</>}</MyChild></div>)
}
// 子组件
export default function MyChild({name='测试', onChangeName, children}) {// console.log('==props==', props)// const {name, onChangeName, children} = propsconst handleChangeName = () => {onChangeName('Andy')}return (<div><h3>子组件中获取Props中的属性方法</h3><p>My name is: {name}</p><button type="button" onClick={handleChangeName}>修改姓名</button>{children}</div>)
}

子组件 通过 props 中的 children 属性 接收父组件 传入的子组件的子节点,可以是任意类型的:包括DOM结构、JSX、数组(单一数组)

关键字:推广方式和推广渠道的区别_出口跨境电商平台有哪些_百度账号出售平台_沈阳专业网站seo推广

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: