찾다

 >  Q&A  >  본문

여러 구성 요소를 렌더링하려고 할 때 React Native 렌더링 오류가 발생했습니다.

<p>사용자가 "추가" 버튼을 누른 후 생성된 동일한 맞춤 구성요소의 여러 복사본을 렌더링하고 싶습니다. 내 코드는 다음과 같습니다: </p> <pre class="brush:php;toolbar:false;">import "react-native-get-random-values";; import { StyleSheet, TextInput, View, Text, TouchableHighlight, Button } from 'react-native'; import React, 'react'에서 { useState }; 'uuid'에서 {v4를 uuidv4로 } 가져오기; './Lift'에서 리프트 가져오기 기본 함수 Lifts() 내보내기 { // const [카드, setCards] = useState([{ id: uuidv4() }]) // const onPress = () => setCards([...cards, [{ id: uuidv4() }]]) const [카드, setCards] = useState([uuidv4()]) const onPress = () => setCards([...카드, uuidv4()]) const 리프트Cards = 카드.맵((id) => { 반품 ( <키 보기={id}> <리프트 /> </보기> ) }) 반품 ( <보기> <TouchableHighlight onPress={onPress} underlayColor={'#DDDDDD'} 스타일={styles.touchable}> <스타일 보기={styles.button}> <텍스트> 리프트 추가 </텍스트> </보기> </터치 가능한 하이라이트> {/* <텍스트 스타일={{ alignSelf: 'center', top: 100 }}> {카드} </텍스트> */} { 카드.맵((데이터, ID) => { 반품 ( <텍스트> {id}</Text> ) }) } </보기> ) } const 스타일 = StyleSheet.create({ 버튼: { alignItems: '가운데', 국경 폭: 2, borderColor: '검은색', 국경 반경: 10, 패딩: 10, }, 터치 가능: { 여백수평: 10, 상위 10 개 } })</pre> 위 스니펫의 <p>는 화면에 표시하려는 맞춤 구성요소입니다. 내가 겪고 있는 문제는 "부스트 추가"를 몇 번 클릭한 후 "정의되지 않은 것은 함수가 아닙니다"라는 오류 메시지가 표시된다는 것입니다.내가 좋아하는 错误:</p> <pre class="brush:php;toolbar:false;">ERROR TypeError: 정의되지 않음은 함수가 아닙니다. 이 오류는 다음 위치에 있습니다. 리프트(SceneView에서 생성) StaticContainer에서 EnacheSingleNavigator(SceneView에서 생성) SceneView에서(SceneView에 의해 생성됨) RCTView(View에서 생성) 보기(DebugContainer에 의해 생성됨) DebugContainer(MaybeNestedStack에서 생성) MaybeNestedStack(SceneView에서 생성) RCTView(View에서 생성) 보기(SceneView에서 생성) RNSScreen(AnimatedComponent에서 생성) AnimatedComponent에서 AnimatedComponentWrapper(InnerScreen에서 생성) 서스펜더(Freeze에서 생성) 서스펜스(Freeze에서 제작) 동결(DelayedFreeze에 의해 생성됨) DelayedFreeze(InnerScreen에서 생성) InnerScreen (Screen에서 생성) 화면(SceneView에서 생성) SceneView(NativeStackViewInner에 의해 생성됨) 서스펜더(Freeze에서 생성) 서스펜스(Freeze에서 제작) 동결(DelayedFreeze에 의해 생성됨) DelayedFreeze(ScreenStack에서 생성) RNSScreenStack에서 (ScreenStack에 의해 생성됨) ScreenStack에서(NativeStackViewInner에 의해 생성됨) NativeStackViewInner(NativeStackView에 의해 생성됨) RNCSafeAreaProvider(SafeAreaProvider에서 생성) SafeAreaProvider(SafeAreaInsetsContext에 의해 생성됨) SafeAreaProviderCompat(NativeStackView에서 생성) NativeStackView(NativeStackNavigator에 의해 생성됨) PreventRemoveProvider(NavigationContent로 생성) NavigationContent에서 알 수 없음(NativeStackNavigator에서 생성) NativeStackNavigator(앱에서 생성) EnacheSingleNavigator에서 BaseNavigationContainer에서 ThemeProvider에서 NavigationContainerInner(앱에서 생성) 앱 내(withDevTools(App)에 의해 생성됨) withDevTools(앱)에서 RCTView(View에서 생성) 보기(AppContainer에 의해 생성됨) RCTView(View에서 생성) 보기(AppContainer에 의해 생성됨) AppContainer에서 메인(RootComponent), js 엔진: hermes</pre> <p>我当有信心问题出我对 <code>uuidv4()</code> 功能的使用上,因为当我使用完全是<code>卡 Pictures</code>的长titude时仅使用 1, 2, 3... 작성 id 数字而不是 <code>uuidv4( ) </코드> 的数组,它也会에서 每次按下时输는 数字와 正确의 增weight입니다. 时得到同的结果,并且自定义 <code><Lift /></code> 卡的数weight与 <code>카드</code></p> 적도상상匹配> <p>编辑:저는 당신의 친구입니다. 移动设备上的错误 移动设备上的错误继续</p>
P粉043566314P粉043566314452일 전500

모든 응답(1)나는 대답할 것이다

  • P粉707235568

    P粉7072355682023-09-06 13:29:45

    문제가 무엇인지 알 수 없었지만 댓글에서 토론한 덕분에 무언가가 uuid 종속성과 제대로 연결되지 않았을 수 있다는 깨달음을 얻었습니다. 그래서 다른 uuid 패키지를 사용했는데 지금은 효과가 있는 것 같습니다...지금은

    회신하다
    0
  • 취소회신하다