2016-07-14 1 views
1

안녕하세요, React Native에 사전 앱을 만들고 각 단어의 정의를 보유 할 JSON blob 배열을 저장하기 만하면됩니다.React Native에 정적 및 공통 데이터 저장

데이터를 하드 코딩하지 않고 코드가 건조 해지 지 않도록하고 싶습니다.

샘플 JSON의 덩어리 :가 수 있도록이 데이터를 저장하는 최선의 전략은 무엇

[ 
    { 
    "word": "triangle", 
    "definition": "a plane figure with three straight sides and three angles.", 
    "type": "noun" 
    }, 
    { 
    "word": "square", 
    "definition": "a plane figure with four equal straight sides and four right angles.", 
    "type": "noun" 
    }, 
    { 
    "word": "circle", 
    "definition": "a round plane figure whose boundary (the circumference) consists of points equidistant from a fixed point (the center).", 
    "type": "noun" 
    } 
] 

:

  1. 는 사용자가 북마크 할 수는
  2. 깨끗하고 변경하기 쉽고 다른 파일과 구분 된 파일
  3. 내 반응 요소로 어떻게 액세스 할 수 있습니까?

필자는 관계형 데이터베이스를 사용하는 것이 가장 좋은 방법이라고 생각하지만 데이터로 데이터베이스를 시드하는 방법을 찾는 데 어려움이 있습니다. 그리고 관계 데이터베이스에 사용할 React Native의 라이브러리.

내 질문을 읽어 주셔서 감사합니다.

답변

1

당신은 다음과 같은 스키마 영역을 사용하여 설명하는 일을 할 수 있습니다 : 당신은 당신의 사전의 모든 항목이있는 영역 파일을 미리 채울 및 응용 프로그램과 함께 번들 수

let EntrySchema = { 
    name: 'Entry', 
    primaryKey: 'word', 
    properties: { 
     word: 'string', 
     definition: 'string', 
     type: 'string' 
    } 
}; 
let BookmarkListsSchema = { 
    name: 'BookmarkList', 
    properties: { 
     bookmarks: {type: 'list', objectType: 'Entry'} 
    } 
}; 

let realm = new Realm({schema: [EntrySchema, BookmarkListsSchema]}); 

, 또는 대안 당신이 할 수 이 파일 또는 JSON을 다운로드하고 응용 프로그램을 시작할 때 DB를 초기화하십시오.

는 생성/책갈피를 추가하려면 :

// create your list once 
var bookmarkList; 
realm.write(() => { 
    bookmarkList = realm.create('BookmarkList'); 
}); 

// add entry for 'triange' to bookmarks 
realm.write(() => { 
    let triangeEntry = realm.objectForPrimaryKey('Entry', 'triangle'); 
    bookmarkList.bookmarks.push(triangleEntry); 
}); 
+0

감사합니다 아리. Realm 파일에 일반 js 스크립트를 미리 채울 수 있습니까? 예를 들어 JS 파일에 Realm 라이브러리가 필요하고 일단 실행하면 영역 파일이 출력됩니까? –

+1

시뮬레이터에서 실행하는 경우 RN 앱에서 파일을 준비하고 파일을 쉽게 복사 할 수 있습니다. 다음과 같이 생성 된 영역 파일의 경로를 알아낼 수 있습니다 :'console.log (realm.path)' – Ari

+0

Oh sweet! 다시 한 번 감사드립니다! –

관련 문제