React-Native의 props 사용법에 대한 자세한 설명
Sep 05, 2017 am 10:48 AM
props
react-native
상해
이 글은 주로 React-Native에서 props의 상세한 사용법을 소개하고 있습니다. 편집자가 꽤 좋다고 생각해서 지금 공유하고 참고용으로 올려드리겠습니다. 에디터를 따라가서 살펴보겠습니다. Props는 컴포넌트의 특성을 설명하기 위해 존재하는 속성입니다. 상위 구성 요소에서 하위 구성 요소로 전달됩니다.
이전 페이지에서 전달한 props 사용이전 페이지에서 전달한
새 PropsTest.js 파일 생성
exprot default class PropsTestextendesComponent{ render(){ return <Text>{this.props.name}</Text> } }
로그인 후 복사
이전 페이지의 PropsTest 컴포넌트 사용
import PropsTest from './PropsTest' <PropsTest name = 'XiaoMing' />
로그인 후 복사
참고: 위 코드는 모두 코드입니다. 단편. 기본 속성과 그 기능
props 속성은 모두 이전 페이지에서 전달되기 때문에 수정할 수 없습니다. 그러나 PropsTest 파일에서 props에 대한 일부 기본값을 정의할 수 있습니다.
exprot default class PropsTestextends Component{ static defaultProps={ name: 'XiaoHong' } render(){ return <Text>{this.props.name}</Text> } }
로그인 후 복사
defaultProps는 정적 수정을 위해 static 키워드를 사용해야 한다는 점에 유의하세요. 이런 방식으로 이전 페이지에서 값이 전달되지 않으면 기본 속성이 표시됩니다. props 제한 및 확인
exprot default class PropsTestextends Component{ static defaultProps={ name: 'XiaoHong' } static propTypes={ name: PropTypes.string, age: PropTypes.number, sex: PropTypes.string.isRequired } render(){ return <Text>{this.props.name}</Text> } }
로그인 후 복사
props의 속성 유형을 결정하려면 propTypes를 사용하면 되고, 이를 수정하려면 static 키워드도 사용해야 합니다.
isRequired는 필수 항목을 지정할 수 있습니다.
참고:
propTypes 속성은 반응 패키지에 있으며 사용하기 전에 가져와야 합니다.
props 스트레치 연산자ES6의 최신 구문
구성 요소에 다음과 같이 많은 속성이 필요한 경우:
params = {name: 'XiaoZhang', age: 18, sex: '男'} // 如果需要传递给下一个页面需要: <PropsTest name = {params.name} sex = {params.sex} age = {params.age} /> // 等等,这样如果属性特别多,代码将会变得难以维护。
로그인 후 복사
ES6의 최신 스트레치 연산자 기능을 사용할 수 있습니다
<PropsTest {...params} />
로그인 후 복사
매우 간단합니다. props 구조 분해 할당
ES6의 최신 구문
확장 연산자를 통해 전달된 개체 중 일부를 다른 구성 요소에서 사용하기 위해 가져오려면 구조 분해 할당을 사용할 수 있습니다
var {name, age} = params; // 其他地方就可以直接引用name和age了 {name}或{age} // 这么做的好处,同样是不需要使用如下的传统方式 {params.name}或{params.age}
로그인 후 복사
위 내용은 React-Native의 props 사용법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

인기 기사
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
2 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
Repo : 팀원을 부활시키는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
헬로 키티 아일랜드 어드벤처 : 거대한 씨앗을 얻는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
스플릿 소설을이기는 데 얼마나 걸립니까?
3 몇 주 전
By DDD
R.E.P.O. 파일 저장 위치 : 어디에 있고 그것을 보호하는 방법은 무엇입니까?
3 몇 주 전
By DDD

인기 기사
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
2 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
Repo : 팀원을 부활시키는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
헬로 키티 아일랜드 어드벤처 : 거대한 씨앗을 얻는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
스플릿 소설을이기는 데 얼마나 걸립니까?
3 몇 주 전
By DDD
R.E.P.O. 파일 저장 위치 : 어디에 있고 그것을 보호하는 방법은 무엇입니까?
3 몇 주 전
By DDD

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제
Gmail 이메일의 로그인 입구는 어디에 있나요?
7310
9


자바 튜토리얼
1624
14


Cakephp 튜토리얼
1346
46


라라벨 튜토리얼
1259
25


PHP 튜토리얼
1207
29



Vue.nextTick 함수의 사용법과 비동기 업데이트에서의 적용에 대한 자세한 설명
