Slate 가져오기, 내보내기와 복제
Slate JSON은 앱 안의 구성과 로직을 옮깁니다. 여러 의존 리소스가 있는 복잡한 앱을 다른 플랫폼 인스턴스로 공유할 때에는 Marketplace 연동을, 같은 인스턴스 안에서 복제할 때에는 Save as를 우선 사용합니다.
JSON 가져오기
편집 모드에서 File > Import JSON을 선택하여 Import Slate JSON 대화상자를 엽니다. .slate.json 파일을 끌어 놓거나 Browse로 선택합니다. 파일 이름과 크기를 표시하고 업로드 중에는 로딩 상태와 함께 입력을 비활성화합니다.
업로드가 실패하면 대화상자를 유지하고 오류 알림을 표시하므로 원인을 확인한 뒤 다시 시도할 수 있습니다.
| JSON의 permalink | 결과 |
|---|---|
| 새롭고 고유한 값 | 새 Slate 문서를 만들 저장 위치를 선택합니다. |
| 이미 존재하는 앱의 값 | 그 기존 앱에 가져온 JSON 내용의 새 버전을 만듭니다. |
의존 리소스와 오류
가져오기는 앱 로직만 포함하며 이미지, 파일, 객체, 데이터셋과 데이터 소스를 자동 생성하지 않습니다. 참조한 데이터 소스를 사용할 수 없으면 가져오기에 실패합니다.
구성되지 않은 데이터 소스를 참조하는 질의가 있으면 You don't have permission to edit queries for all datasources in this document. 오류가 나타날 수 있습니다.
- 질의를 유지하려면 참조하는 데이터 소스를 먼저 구성합니다.
- 해당 질의를 포함하지 않고 가져오려면 Slate JSON에서 질의를 제거한 뒤 가져옵니다.
다른 리소스 참조가 대상 환경에 없으면 앱을 열 때 오류가 발생합니다. 편집 모드에서 실제 리소스로 참조를 갱신합니다. OSDK를 쓰는 앱은 가져온 뒤 OSDK 번들을 수동으로 다시 생성해야 할 수도 있습니다.
JSON 내보내기
편집 모드의 File > Export는 앱 구성 JSON을 로컬로 다운로드합니다.
| 포함 | 포함하지 않는 외부 리소스 |
|---|---|
| 위젯, Slate 함수, 질의 로직, 이벤트, 변수와 앱 스타일 | 전역 스타일시트, 객체, 데이터 소스, 데이터셋, 액션, 이미지, 동영상과 코드 샌드박스에 가져온 JavaScript/CSS 라이브러리 |
앱 안의 스타일 선언과 별도 리소스인 전역 스타일시트는 이동 범위가 다릅니다.
새 앱으로 복제
편집 모드의 File > Save as에서 새 위치와 이름을 지정합니다. 원본의 최신 버전만 복제하며 새 앱에서는 v1로 저장합니다.
OSDK를 사용하는 앱은 원본의 기존 번들을 복사하며 새로 생성하지 않습니다. JSON 가져오기 뒤 필요한 번들 재생성과 구분합니다.
위젯 복사
왼쪽 Layout에서 위젯을 선택한 뒤 macOS는 Cmd+C, Windows는 Ctrl+C로 복사합니다. 다른 Slate 앱을 열고 Cmd+V 또는 Ctrl+V로 붙여 넣습니다.
기존 앱 덮어쓰기
Save as에서 파일 선택기의 기존 Slate 앱을 저장 대상으로 고르면 그 앱에 새 버전을 만듭니다. 현재 앱에서 선택한 버전의 내용을 복사하므로 staging 앱을 승격하는 등의 작업에 사용할 수 있습니다. 새 이름의 복제와 기존 앱의 새 버전 생성 중 어느 동작을 할지 저장 대상을 확인합니다.