Zum Hauptinhalt springen

Unterstützte Plattformen

Inoffizielle Beta-Übersetzung

Diese Seite wurde von PageTurner AI übersetzt (Beta). Nicht offiziell vom Projekt unterstützt. Fehler gefunden? Problem melden →

NodeJS

TypeORM ist kompatibel mit Node.js 16+ und wird derzeit bei jedem Commit auf Node.js 18 und 20 getestet.

Browser

Im Browser können Sie sql.js verwenden.

Webpack-Konfiguration

Im browser-Ordner enthält das Paket auch eine als ES2015-Modul kompilierte Version. Wenn Sie einen anderen Loader verwenden möchten, ist dies der Ausgangspunkt. Vor TypeORM 0.1.7 war das Paket so eingerichtet, dass Loader wie Webpack automatisch den browser-Ordner verwendet haben. Ab Version 0.1.7 wurde dies entfernt, um die Webpack-Nutzung in Node.js-Projekten zu unterstützen. Das bedeutet, dass das NormalModuleReplacementPlugin verwendet werden muss, um sicherzustellen, dass die korrekte Version für Browser-Projekte geladen wird. Die Konfiguration dieses Plugins in Ihrer Webpack-Konfigurationsdatei sieht so aus:

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'
})
]

Stellen Sie sicher, dass die sql-wasm.wasm-Datei in Ihrem öffentlichen Pfad vorhanden ist.

Konfigurationsbeispiel

new DataSource({
type: "sqljs",
entities: [Photo],
synchronize: true,
})

Vergessen Sie nicht, reflect-metadata einzubinden

In Ihrer Haupt-HTML-Seite müssen Sie reflect-metadata einbinden:

<script src="./node_modules/reflect-metadata/Reflect.js"></script>

Capacitor

Siehe Verwendung von TypeORM mit dem Capacitor-Treibertyp in der offiziellen Capacitor-Dokumentation.

Cordova / Ionic Apps

TypeORM kann auf Cordova/Ionic-Apps mit dem cordova-sqlite-storage-Plugin ausgeführt werden. Sie können zwischen Modul-Loadern wählen, genau wie im Browser-Paket. Ein Beispiel zur Verwendung von TypeORM mit Cordova finden Sie unter typeorm/cordova-example und für Ionic unter typeorm/ionic-example. Wichtig: Für die Verwendung mit Ionic ist eine benutzerdefinierte Webpack-Konfigurationsdatei erforderlich! Bitte sehen Sie sich das Beispiel an, um die erforderlichen Änderungen zu sehen. Beachten Sie, dass derzeit keine Transaktionsunterstützung bei Verwendung des cordova-sqlite-storage-Plugins besteht. Weitere Informationen finden Sie unter Cordova SQLite-Einschränkungen.

Expo

TypeORM kann auf Expo-Apps mit der Expo SQLite API ausgeführt werden. Ein Beispiel zur Verwendung von TypeORM in Expo finden Sie unter typeorm/expo-example.

NativeScript

  1. tns install webpack (siehe unten, warum Webpack erforderlich ist)

  2. tns plugin add nativescript-sqlite

  3. Erstellen Sie eine DataSource im Einstiegspunkt Ihrer App:

    import driver from "nativescript-sqlite"

    const dataSource = new DataSource({
    database: "test.db",
    type: "nativescript",
    driver,
    entities: [
    Todo, //... whatever entities you have
    ],
    logging: true,
    })

Hinweis: Dies funktioniert nur mit NativeScript 4.x und höher

Bei Verwendung mit NativeScript ist Webpack zwingend erforderlich. Das typeorm/browser-Paket enthält rohen ES7-Code mit import/export, der NICHT direkt ausgeführt werden kann. Er muss gebündelt werden. Verwenden Sie bitte die Methode tns run --bundle

Beispielprojekt hier ansehen!

React Native

TypeORM kann in React Native-Apps mit Hilfe des react-native-sqlite-storage-Plugins verwendet werden. Ein Beispiel finden Sie unter typeorm/react-native-example.