데이터를 자바 스크립트로 저장할 수 없다는 것을 알고 있지만 데이터를 쓸 수있는 로컬 파일 시스템에 구성 파일 (JSON)을 만드는 방법이 있습니까? 객체를 추가하거나 제거하고이를 저장하는 것과 같은 변경 사항이 있습니다. 다음에 내 앱을 시작할 때 새로운 데이터를 잃고 싶지 않습니다. 어떤 아이디어?구성 파일 만들기 - 변경 내용을 읽고 저장할 수있는 능력
도움 주셔서 감사합니다.
UPDATE 나는 다른 컴퓨터에 그것을 사용하려고합니다.
데이터를 자바 스크립트로 저장할 수 없다는 것을 알고 있지만 데이터를 쓸 수있는 로컬 파일 시스템에 구성 파일 (JSON)을 만드는 방법이 있습니까? 객체를 추가하거나 제거하고이를 저장하는 것과 같은 변경 사항이 있습니다. 다음에 내 앱을 시작할 때 새로운 데이터를 잃고 싶지 않습니다. 어떤 아이디어?구성 파일 만들기 - 변경 내용을 읽고 저장할 수있는 능력
도움 주셔서 감사합니다.
UPDATE 나는 다른 컴퓨터에 그것을 사용하려고합니다.
당신은 읽고 localstorage
을 통해 데이터를 쓸 자신에게 SettingsService
를 작성할 수 : 귀하의 구성 요소 또는 서비스에서이처럼 사용
class SettingsEntry {
constructor(public key: string, public value: any) { }
}
export class SettingsService {
private SETTINGS_KEY = "__SETTINGS__";
private _settings: Array<SettingsEntry>;
constructor() {
let settings = localStorage.getItem(this.SETTINGS_KEY);
if (settings && settings != undefined) {
this._settings = JSON.parse(settings);
}
else {
this._settings = [];
this.save();
}
}
private indexOf(key: string): number {
for (let i = 0; i < this._settings.length; i++) {
if (this._settings[i].key == key) {
return i;
}
}
return -1;
}
private save() {
localStorage.setItem(this.SETTINGS_KEY, JSON.stringify(this._settings));
}
get(key: string) {
let index: number = this.indexOf(key);
if (index >= 0) {
return this._settings[index].value;
}
return null;
}
set(key: string, value: any) {
let index: number = this.indexOf(key);
if (index >= 0) {
this._settings[index].value = value;
}
else {
this._settings.push(new SettingsEntry(key, value));
}
this.save();
}
}
:
_settingsService.set("time", new Date());
let time = _settingsService.get("time");
작업 Plunker 예 :
답변 해 주셔서 감사합니다! 이 아이디어가 마음에 들면 100 % 개인 설정으로 사용 하겠지만 다른 컴퓨터에서 작업하고 싶을 때 전역 설정을 위해 다른 설정이 필요합니다. – Verri
config를 로컬 파일 시스템에 보관하고 싶습니다. – Verri
mongodb를 사용하여 JSON에 저장할 수 있습니다 – Rikin
[localStorage] (https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage) 여기에서 필요한 항목이 있습니다. 또는 [FileSystem API] (http://www.html5rocks.com/en/tutorials/file/filesystem/)를보십시오. [무엇을 시도 했습니까?] (http://whathaveyoutried.com)? – ManoDestra