Я пробовал NeDB в node-webkit, он отлично работает в данных памяти, но не может хранить его в постоянном хранилище.Как добиться постоянного хранения в NeDB?
ответ
определенно нет узла WebKit или nedb эксперт, но это, как я это сделал, и она работала.
Как уже упоминалось mvanderw в комментариях, обязательно проверьте вариант автозагрузки.
Это, например, моя конфигурация для простого узла WebKit/углового приложения Todo:
var Datastore = require('nedb'),
path = require('path'),
db = new Datastore({ filename: path.join(require('nw.gui').App.dataPath, 'todo.db'), autoload: true });
Когда я перезапустить приложение, все Todos все еще там, и я готов идти.
Надеется, что это помогает
Edit: Примера по просьбе Скотта
var Datastore = require('nedb'),
path = require('path'),
db = new Datastore({
filename:path.join(require('nw.gui').App.dataPath, 'todo.db'),
autoload: true
});
var todoServices = angular.module('todoServices', []);
todoServices.factory('Todo', function($q) {
return {
getAll: function(){
var defer = $q.defer();
db.find({
//...some criteria
},
function(err, docs) {
defer.resolve(docs);
});
return defer.promise;
}, //...moar code
}
});
Что-то вроде этого ...
, если бы вы опубликовали код для своего todo-приложения? Я пытаюсь интегрировать nedb с моим приложением node-webkit, и отсутствие рабочих примеров действительно ограничивает – Scott
ehm ... возможно, спросите у Stack Question и ссылку на него, чтобы я мог опубликовать с правильным форматированием :) – flaky
Добавлен пример ответа :) – flaky
C:\Users\Dinesh\AppData\Local\FrameLess\nedb-data
is node-webkit
несжатое приложение; это означает, что ваше приложение было упаковано как .nw
, что более разумный zip-файл. Как следствие, его нужно распаковать в папку tmp для выполнения, поэтому вы нашли свой db в AppData
.
В вашем инструменте разработчика вы всегда можете узнать, в какую папку было распаковано приложение, набрав: process.env
. Свойство TMPDIR
- это место, где находится ваш db (TMPDIR
- свойство Mac OS X, его можно назвать по-разному в Windows).
Вы можете выполнить свое приложение nw
, не упаковывая его. В основном вы можете перетащить свою папку на nw.exe
; или введите nw.exe yourAppFolder
; или упакуйте приложение как .nw
, как и вы.
Прочитайте следующую директиву еще раз: https://github.com/rogerwang/node-webkit/wiki/How-to-run-apps
- 1. Способы постоянного хранения данных
- 2. Использование firebase для постоянного хранения
- 3. Как добиться постоянного и точные Windows Phone 8 GPS слежения
- 4. NeDB + Typcript
- 5. Обновить строку в nedb
- 6. Лучшая практика для хранения постоянного потока данных
- 7. шаблон C++ для постоянного хранения данных класс
- 8. Перестроить модель домена из хранилища постоянного хранения
- 9. SQLite или SharedPreferences для постоянного хранения данных?
- 10. Эластичный фасонный столик постоянного хранения журналов
- 11. Что такое хороший способ хранения постоянного массива?
- 12. realmdb автоматического обновления и постоянного хранения
- 13. Поиск минимума в Nedb datatable?
- 14. Доступ к результатам nedb
- 15. NEDB persistance в приложении Electron
- 16. Как я могу написать список Python для постоянного хранения?
- 17. NeDB не обновил записи
- 18. Есть ли возможность постоянного хранения данных в HDFS?
- 19. Подход для хранения временного и постоянного адреса в rdbms
- 20. Есть ли общий способ постоянного хранения Jars в jenkins
- 21. Есть ли способ в javascript/jQuery для постоянного хранения данных?
- 22. Самый быстрый способ постоянного хранения в процессах моего приложения?
- 23. Использование IsolatedStorageSettings для постоянного хранения информации для приложения в wp8
- 24. Запуск Tomcat в затмении Luna «Исключительные погрузки с постоянного хранения»
- 25. Как использовать `NeDB` в браузере для сохранения между сеансами?
- 26. Force NeDB для создания локального файла с помощью Electron
- 27. nedb: как получить документы из функции find()?
- 28. Как обрабатывать асинхронный метод поиска NeDB?
- 29. Используйте AJAX и PHP для постоянного хранения комментариев.
- 30. обработка постоянного хранения и холодных ботинок с ce 4.2
ли вы получите какие-либо ошибки? – robertklep
Нуждается в дополнительной информации - вы посмотрели [nedb db loading] (https://github.com/louischatriot/nedb#creatingloading-a-database), в частности опции 'inMemoryOnly' и' autoload'? –
Наконец-то я обнаружил, что база данных создана в каком-то другом каталоге пакет находится по адресу: C: \ Users \ Dinesh \ Programs \ Node-Webkit \ FrameLess nw.exe находится по адресу: C: \ Users \ Dinesh \ Programs \ Node-Webkit \ Package база данных сохраняется в каком-то странном месте: C: \ Users \ Dinesh \ AppData \ Local \ FrameLess \ nedb-data – Dinesh