inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

처음 배우는 리액트 네이티브

기능 구현하기 - 추가

ReferenceError: Can't find variable: Data

1716

승현

작성한 질문수 14

0

import React, { useState } from 'react';
import { StatusBar, Dimensions } from 'react-native';
import styled, {ThemeProvider} from 'styled-components/native';
import {theme} from './theme';
import Input from './components/Input';
import Task from './components/Task';

const Container = styled.SafeAreaView`
flex: 1;
background-color: ${({theme}) => theme.background};
align-items: center;
justify-content: flex-start; /* 타이틀이 상단에 나타나도록 justify-content의 값을 flex-start;로 지정해준다. */
`;

const Title = styled.Text`
font-size: 40px;
font-weight: 600;
color: ${({theme}) => theme.main};
width: 100%;
align-items: flex-end;
padding: 0 20px;
`;
/* styled components를 이용해서 Title이라는 이름에 새로운 컴포넌트를 만드는 작업이다.
font-size와 font-weight 그리고 글자 color를 설정해주는데 글자 color는 theme.js에 정의해놓은 main을 가져와서 사용할것이다.
가로(width)는 전체를 차지하게하고, 글자를 왼쪽(align-items: flex-end;)에서부터 하도록한다.
화면의 끝에 바짝붙지않도록 padding을 주어서 약간 떨어지게 설정을한다. */

const List = styled.ScrollView`
flex: 1;
width: ${({ width }) => width -40}px;
`;

export default function App() {
const width = Dimensions.get('window').width;

const tempData = {
1: { id: '1', text: 'React Native', completed: false },
2: { id: '2', text: 'Expo', completed: true },
3: { id: '3', text: 'JavaScript', completed: false },
};
const [tasks, setTasks] = useState(tempData);

const [newTask, setNewTask] = useState('');

const addTask = () => {
const ID = Data.now().toString();
const newTaskObject ={
[ID] : {id: ID, text: newTask, completed: false },
};
setNewTask('');
setTasks({...tasks, ...newTaskObject});
};

return (
<ThemeProvider theme={theme}>
<Container>
<StatusBar
style="light-content"
backgroundColor={theme.background}
/>
<Title>TODO List</Title>
<Input
placeholder="+ Add a Task"
value={newTask}
onChangeText = {text => setNewTask(text)}
onSubmitEditing={addTask}
/>
<List width = {width}>
{Object.values(tasks)
.reverse()
.map(item => (
<Task key={item. id} text={item.text} />
))}
</List>
</Container>
</ThemeProvider>
);
}
강의에 나오는것과 똑같이 했는데 +Add a Task에 글자입력하고
enter를 누르면 오류가 나오네요ㅠㅠ

referenceerror Can't react-native find javascript variable data

답변 1

1

김범준

안녕하세요 승현님, 

  

대부분의 에러는 에러 메시지에서 문제점을 찾을 수 있습니다. 
Data 라는 변수를 찾을 수 없다는 에러메시지이니 Data라는것이 사용된 곳에서 문제의 원인을 찾으면 됩니다. 

    

const addTask = () => { 
    const ID = Data.now().toString();

이라고 오타가 있네요. 
Date.now().toString() 으로 변경하시기 바랍니다. 

  

강의를 천천히 보면서 확인하거나,
깃헙에 있는 강의 코드(link)와 비교를 하면서 확인하면 조금 더 쉽게 문제점을 찾을 수 있습니다. 

  

질문을 할때는 작업중인 코드를 깃헙에 올리고,
깃헙의 주소와 문제가 되는 상황에 대한 상세한 설명을 함께 남겨주세요. 

    

즐거운 하루 되세요
감사합니다. 

 

0

승현

감사합니다:)

맥북 m4에서 nvm으로 설치불가

0

108

2

expo 사용하지 않고 앱 실행 시, 데이터 불러오기

0

338

1

리덕스강의는 없나요?

0

268

1

선생님 도와주세요 ㅠㅠ (로그인, 회원가입, 콘솔 에러)

0

499

1

버젼 업데이트

0

414

1

expo start중 metro bundler가 같이 실행되지 않아요

0

500

1

모바일 expo 실행오류

0

850

1

안드로이드에서 expo실행이 안되요

0

844

2

터미널 다운 및 사용방법

0

293

1

expo init 에러

0

737

2

안녕하세요. 스택네비게이션 문제 질문드립니다 ㅜ

0

321

1

배포중 에러 해결이 안되네요.. ㅜㅜ

1

3223

1

안녕하세요! 강의 Chat App - Part 1 회원가입 부분에서 firebase 관련 에러가 납니다.

0

690

1

styled-components 에러

0

399

1

OS 네이트브 코드를 개발하면서 UI 를 리액트 네이티브로

0

486

1

저장하면 바뀐값들 보여야하는데 재렌더링이 안일어납니다..

0

496

1

안드로이드스튜디오 EXPO 어플 튕깁니다 ㅠㅠ

0

280

1

styled component를 사용하면 터집니다 ㅠㅠ

0

411

1

attrs, 속성, props 가 혼란스럽습니다.

0

349

1

안녕하세요, 강의 잘 들었습니다 :) RN과 파이어베이스 관련해서 질문드릴게 있습니다!

0

579

1

자꾸 The request timed out 에러가 뜹니다 .

0

1915

1

코드 좀 봐주세요 버튼 두개가 생성이 안되요

0

280

1

expo 실행시 스타일 속성 바로 보려면 어디서 보나요?

0

428

1

자바스크립트 () => 의미는요???

0

444

2