Piattaforme supportate
Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →
NodeJS
TypeORM è compatibile con Node.js 20+ e attualmente ogni commit viene testato su Node.js 20 e 24.
Browser
Puoi utilizzare sql.js nel browser.
Configurazione Webpack
Nella cartella browser il pacchetto include anche una versione compilata come modulo ES2015. Se vuoi utilizzare un loader diverso, questo è il punto di partenza. Prima di TypeORM 0.1.7, il pacchetto era configurato in modo che loader come webpack utilizzassero automaticamente la cartella browser. Dalla versione 0.1.7 questa funzionalità è stata rimossa per supportare l'uso di Webpack in progetti Node.js. Ciò significa che è necessario utilizzare il NormalModuleReplacementPlugin per garantire che venga caricata la versione corretta per progetti browser. La configurazione nel tuo file di configurazione webpack per questo plugin è la seguente:
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'
})
]
e assicurati che il file sql-wasm.wasm sia presente nel tuo percorso pubblico.
Esempio di configurazione
new DataSource({
type: "sqljs",
entities: [Photo],
synchronize: true,
})
Non dimenticare di includere reflect-metadata
Nella tua pagina HTML principale, devi includere reflect-metadata:
<script src="./node_modules/reflect-metadata/Reflect.js"></script>
Capacitor
Consulta Using TypeORM with the Capacitor driver type nella documentazione ufficiale di Capacitor.
App Cordova / Ionic
TypeORM può funzionare su app Cordova/Ionic utilizzando il plugin cordova-sqlite-storage.
Hai la possibilità di scegliere tra diversi module loader, proprio come nel pacchetto browser.
Importante: Per l'uso con Ionic è necessario un file di configurazione webpack personalizzato. Nota che attualmente non è supportato l'uso delle transazioni con il plugin cordova-sqlite-storage. Per maggiori informazioni, consulta le limitazioni di Cordova SQLite.
Expo
TypeORM può funzionare su app Expo utilizzando l'API SQLite di Expo.
NativeScript
-
tns install webpack(leggi sotto perché è richiesto webpack) -
tns plugin add nativescript-sqlite -
Crea un DataSource nel punto di ingresso della tua app
import driver from "nativescript-sqlite"const dataSource = new DataSource({database: "test.db",type: "nativescript",driver,entities: [Todo, //... whatever entities you have],logging: true,})
Nota: Funziona solo con NativeScript 4.x e versioni successive
Quando si utilizza con NativeScript, l'uso di webpack è obbligatorio.
Il pacchetto typeorm/browser contiene codice ES7 grezzo con import/export
che NON funzionerà così com'è. Deve essere compilato.
Utilizza il metodo tns run --bundle
Consulta l'esempio qui!
React Native
TypeORM può funzionare su app React Native utilizzando il plugin react-native-sqlite-storage.