NativeScript - Moduli

Un modulo NativeScript contiene una serie di funzionalità correlate impacchettate come singola libreria. Impariamo i moduli forniti dal framework NativeScript.

Contiene le funzionalità principali del framework NativeScript. Cerchiamo di capire i moduli principali in questo capitolo.

Applicazione

L'applicazione contiene l'implementazione specifica della piattaforma dell'applicazione mobile. Il modulo principale semplice è definito di seguito:

const applicationModule = require("tns-core-modules/application");

Console

Il modulo della console viene utilizzato per registrare il messaggio. Ha i seguenti metodi:

console.log("My FirstApp project"); 
console.info("Native apps!"); 
console.warn("Warning message!"); 
console.error("Exception occurred");

impostazioni dell'applicazione

Il modulo delle impostazioni dell'applicazione contiene il metodo per gestire le impostazioni dell'applicazione. Per aggiungere questo modulo, dobbiamo aggiungere il seguente codice:

const appSettings = require("tns-core-modules/application-settings");

Alcuni metodi disponibili nell'impostazione dell'applicazione sono i seguenti:

  • setBoolean (key: string, value: boolean) - imposta l'oggetto booleano

  • setNumber (key: string, value: number) - imposta l'oggetto numero

  • setString (key: string, value: string) - imposta l'oggetto stringa

  • getAllKeys (): contiene tutte le chiavi memorizzate

  • hasKey (key: string) - controlla se una chiave è presente o meno

  • clear: cancella i valori memorizzati

  • rimuovi: rimuove qualsiasi voce in base alla chiave.

Un semplice esempio di utilizzo delle impostazioni dell'applicazione è il seguente:

function onNavigatingTo(args) { 
   appSettings.setBoolean("isTurnedOff", false);
   appSettings.setString("name", "nativescript"); 
   appSettings.setNumber("locationX", 54.321); 
   const isTurnedOn = appSettings.getBoolean("isTurnedOn"); 
   const username = appSettings.getString("username"); 
   const locationX = appSettings.getNumber("locationX"); 
   // Will return "not present" if there is no value for "noKey" 
   const someKey = appSettings.getString("noKey", "not present"); 
}
exports.onNavigatingTo = onNavigatingTo; 
function onClear() {
   // Removing a single entry via its key name 
   appSettings.remove("isTurnedOff"); 
   // Clearing the whole settings 
   appSettings.clear(); 
}

http

Questo modulo viene utilizzato per la gestione httprichiesta e risposta. Per aggiungere questo modulo nella tua applicazione, aggiungi il seguente codice:

const httpModule = require("tns-core-modules/http");

Possiamo inviare i dati utilizzando i seguenti metodi:

getString- Viene utilizzato per effettuare richieste e scaricare i dati dall'URL come stringa. È definito di seguito:

httpModule.getString("https://.../get").then(
   (r) => { 
      viewModel.set("getStringResult", r); 
   }, (e) => 
   { 
   }
);

getJSON- Viene utilizzato per accedere ai dati da JSON. È definito di seguito:

httpModule.getJSON("https://.../get").then((r) => { 
}, (e) => { 
});

getImage- scarica il contenuto dall'URL specificato e restituisce l'oggetto ImageSource. È definito di seguito:

httpModule.getImage("https://.../image/jpeg").then((r) => { 
}, (e) => { 
});

getFile - Ha due argomenti URL e percorso del file.

  • URL - scarica i dati.

  • File path- salva i dati dell'URL nel file. È definito di seguito:

httpModule.getFile("https://").then((resultFile) => { 
}, (e) => { 
});

request- Ha argomenti di opzioni. Viene utilizzato per richiedere opzioni e restituire l'oggetto HttpResponse. È definito di seguito:

httpModule.request({ 
   url: "https://.../get", 
   method: "GET" 
}).then((response) => { 
}, (e) => { 
});

Fonte immagine

Il modulo di origine dell'immagine viene utilizzato per salvare l'immagine. Possiamo aggiungere questo modulo usando la seguente dichiarazione:

const imageSourceModule = require("tns-core-modules/image-source");

Se desideri caricare immagini dalla risorsa, utilizza il codice seguente:

const imgFromResources = imageSourceModule.fromResource("icon");

Per aggiungere un'immagine dal file locale, utilizzare il comando seguente:

const folder = fileSystemModule.knownFolders.currentApp(); 
const path = fileSystemModule.path.join(folder.path, "images/sample.png"); 
const imageFromLocalFile = imageSourceModule.fromFile(path);

Per salvare l'immagine nel percorso del file, utilizzare il comando seguente:

const img = imageSourceModule.fromFile(imagePath); 
const folderDest = fileSystemModule.knownFolders.documents(); 
const pathDest = fileSystemModule.path.join(folderDest.path, "sample.png"); 
const saved = img.saveToFile(pathDest, "png"); if (saved) { 
   console.log(" sample image saved successfully!"); 
}

Timer

Questo modulo viene utilizzato per eseguire codice a intervalli di tempo specifici. Per aggiungere questo, dobbiamo usarerequire -

const timerModule = require("tns-core-modules/timer");

Si basa su due metodi:

setTimeout- Viene utilizzato per ritardare l'esecuzione. È rappresentato come millisecondi.

setInterval - Viene utilizzato per applicare ricorrenti a intervalli specifici.

Traccia

Questo modulo è utile per il debug. Fornisce le informazioni di registrazione. Questo modulo può essere rappresentato come:

const traceModule = require("tns-core-modules/trace");

Se vuoi abilitare nella tua applicazione, usa il comando seguente:

traceModule.enable();

ui / image-cache

Il modulo image-cache viene utilizzato per gestire le richieste di download di immagini e memorizza nella cache le immagini scaricate. Questo modulo può essere rappresentato come mostrato di seguito:

const Cache = require("tns-core-modules/ui/image-cache").Cache;

connettività

Questo modulo viene utilizzato per ricevere le informazioni di connessione della rete connessa. Può essere rappresentato come:

const connectivityModule = require("tns-core-modules/connectivity");

Moduli di funzionalità

I moduli di funzionalità includono molti moduli specifici per sistema / piattaforma. Alcuni dei moduli importanti sono i seguenti:

platform- Utilizzato per visualizzare le informazioni sul tuo dispositivo. Può essere definito come indicato di seguito:

const platformModule = require("tns-core-modules/platform");

fps-meter- Utilizzato per acquisire fotogrammi al secondo. Può essere definito come indicato di seguito:

const fpsMeter = require("tns-core-modules/fps-meter");

file-system- Utilizzato per lavorare con il file system del dispositivo. È definito di seguito:

const fileSystemModule = require("tns-core-modules/file-system");

ui/gestures - Utilizzato per lavorare con i gesti dell'interfaccia utente.

Modulo UI

Il modulo UI include il componente UI e le relative funzionalità. Alcuni degli importanti moduli dell'interfaccia utente sono i seguenti:

  • frame

  • page

  • color

  • text/formatted-string

  • xml

  • styling

  • animation