2013-12-20 2 views
0

Я новичок в enyo. Я хочу сохранить состояние переменной (которое является логическим), когда приложение выполняется. Затем выйдите из приложения. После этого я хочу получить состояние (true/false) переменной, когда приложение снова откроется. Как сохранить и восстановить данные в enyo?Сохранить и восстановить данные enyo

ответ

0

Я хотел бы использовать LocalStorage (API Docs here), чтобы сохранить Ваше состояние каждый раз, когда изменение состояния происходит в вашем приложении:

myStateChange: function() { 
    localStorage.myState = this.myState; 
} 

Примечание: чтобы гарантировать, что myStateChange вызывается каждый раз, когда вы установите его в другом месте, используйте this.set(), чтобы установить его, а не this.myState = newValue ;.

Тогда в методе rendered() или create() я бы восстановил это состояние из localStorage.

rendered: function() { 
    this.inherited(arguments);   // Call base rendered method 
    this.myState = localStorage.myState; // Restore your saved value from localStorage 
} 
0

Нет специальных крючков для хранения данных, но очень легко связать с собственными возможностями хранения данных, доступными для вашей платформы. Вы можете взглянуть на эти варианты:

http://dev.opera.com/articles/view/taking-your-web-apps-offline-web-storage-appcache-websql/

http://docs.phonegap.com/en/1.0.0/phonegap_storage_storage.md.html

Если вы используете enyo.Collection вы можете получить записи из него с collection.raw(), а затем использовать JSON.stringify(), чтобы получить то, что вы можете поместить в LocalStorage ,

Вы даже можете использовать куки. Надеюсь, это даст вам некоторые места, чтобы начать искать.