Я нахожусь на Angular 4.0.0, используя preboot / angular-webpack , и должен был пойти немного иначе.
Решение, предоставленное @Taytay, в основном работало для меня:
npm install --save lodash
npm install --save @types/lodash
и импортирования функций в заданный файл .component.ts, используя:
import * as _ from "lodash";
Это работает, потому что нет стандартного экспортированного класса. Разница в моей: мне нужно было найти способ загрузки в сторонних библиотеках: vendor.ts, который сидел на:
src/vendor.ts
Теперь файл vendor.ts выглядит следующим образом:
import '@angular/platform-browser';
import '@angular/platform-browser-dynamic';
import '@angular/core';
import '@angular/common';
import '@angular/http';
import '@angular/router';
import 'rxjs';
import 'lodash';
// Other vendors for example jQuery, Lodash or Bootstrap
// You can import js, ts, css, sass, ...
Взгляните на этот пример: Загрузка и сохранение баз данных в памяти
Если Вы не, имеют достаточно времени, чтобы прочитать целую документацию, отправленную ответом @NickDandoulakis, просто скопировать и вставить ниже функции (уже упомянутый в ссылке) в Вашем коде:
int loadOrSaveDb(sqlite3 *pInMemory, const char *zFilename, int isSave)
{
int rc; /* Function return code */
sqlite3 *pFile; /* Database connection opened on zFilename */
sqlite3_backup *pBackup; /* Backup object used to copy data */
sqlite3 *pTo; /* Database to copy to (pFile or pInMemory) */
sqlite3 *pFrom; /* Database to copy from (pFile or pInMemory) */
rc = sqlite3_open(zFilename, &pFile);
if (rc == SQLITE_OK)
{
pFrom = (isSave ? pInMemory : pFile);
pTo = (isSave ? pFile : pInMemory);
pBackup = sqlite3_backup_init(pTo, "main", pFrom, "main");
if (pBackup) {
(void)sqlite3_backup_step(pBackup, -1);
(void)sqlite3_backup_finish(pBackup);
}
rc = sqlite3_errcode(pTo);
}
(void)sqlite3_close(pFile);
return rc;
}
и затем для того, чтобы сохранить данные Вашего дб SQLite (в памяти) в вызов файла:
loadOrSaveDb(db_con, target_file, 1);
то, Которое db_con
Ваш указатель объекта соединения с базой данных и target_file
, является адресом конечного файла.
Комментарий: , Если Вы хотите загрузить файл базы данных SQLite в память, просто работайте:
loadOrSaveDb(db_con, target_file, 0);
Используйте оператор транзакции, прежде чем что-либо делать с таблицей. Это также обеспечивает быструю обработку и откат. Таким образом, вам не нужно напрямую размещать базу данных в памяти.