Plataformas compatibles
Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →
NodeJS
TypeORM es compatible con Node.js 16+ y actualmente cada commit se prueba en Node.js 18 y 20.
Navegador
Puedes usar sql.js en el navegador.
Configuración de Webpack
En la carpeta browser, el paquete también incluye una versión compilada como módulo ES2015. Si deseas usar un cargador diferente, este es el punto de partida. Antes de TypeORM 0.1.7, el paquete estaba configurado para que cargadores como webpack usaran automáticamente la carpeta browser. A partir de la versión 0.1.7, esto se eliminó para admitir el uso de Webpack en proyectos Node.js. Esto significa que debes usar NormalModuleReplacementPlugin para asegurar que se cargue la versión correcta para proyectos de navegador. La configuración en tu archivo de configuración de webpack para este plugin luce así:
plugins: [
..., // any existing plugins that you already have
new webpack.NormalModuleReplacementPlugin(/typeorm$/, function (result) {
result.request = result.request.replace(/typeorm/, "typeorm/browser");
}),
new webpack.ProvidePlugin({
'window.SQL': 'sql.js/dist/sql-wasm.js'
})
]
y asegúrate de que el archivo sql-wasm.wasm exista en tu ruta pública.
Ejemplo de configuración
new DataSource({
type: "sqljs",
entities: [Photo],
synchronize: true,
})
No olvides incluir reflect-metadata
En tu página HTML principal, necesitas incluir reflect-metadata:
<script src="./node_modules/reflect-metadata/Reflect.js"></script>
Capacitor
Consulta Uso de TypeORM con el tipo de controlador de Capacitor en la documentación oficial de Capacitor.
Aplicaciones Cordova / Ionic
TypeORM puede ejecutarse en aplicaciones Cordova/Ionic usando el plugin cordova-sqlite-storage. Tienes la opción de elegir entre cargadores de módulos como en el paquete para navegador. Para ver un ejemplo de cómo usar TypeORM en Cordova, consulta typeorm/cordova-example y para Ionic, consulta typeorm/ionic-example. Importante: ¡Para usar con Ionic, se necesita un archivo de configuración personalizado de webpack! Por favor revisa el ejemplo para ver los cambios necesarios. Ten en cuenta que actualmente no hay soporte para transacciones al usar el plugin cordova-sqlite-storage. Consulta las limitaciones de Cordova SQLite para más información.
Expo
TypeORM puede ejecutarse en aplicaciones Expo usando la API de SQLite de Expo. Para ver un ejemplo de cómo usar TypeORM en Expo, consulta typeorm/expo-example.
NativeScript
-
tns install webpack(lee más abajo por qué se requiere webpack) -
tns plugin add nativescript-sqlite -
Crea un DataSource en el punto de entrada de tu aplicación:
import driver from "nativescript-sqlite"
const dataSource = new DataSource({
database: "test.db",
type: "nativescript",
driver,
entities: [
Todo, //... whatever entities you have
],
logging: true,
})
Nota: Esto funciona solo con NativeScript 4.x y superior
Al usar con NativeScript, es obligatorio usar webpack.
El paquete typeorm/browser es código ES7 puro con import/export
que NO se ejecutará tal cual. Debe ser empaquetado.
Por favor usa el método tns run --bundle
¡Consulta el ejemplo aquí!
React Native
TypeORM puede ejecutarse en aplicaciones React Native usando el plugin react-native-sqlite-storage. Para ver un ejemplo, consulta typeorm/react-native-example.