NativeScript - Модули

NativeScript модуль содержит набор смежных функциональных возможностей упакованных в одной библиотеке. Давайте изучим модули, предоставляемые фреймворком NativeScript.

Он содержит основные функции фреймворка NativeScript. Давайте разберемся с основными модулями в этой главе.

заявка

Приложение содержит реализацию мобильного приложения для конкретной платформы. Простой основной модуль определен ниже -

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

Приставка

Консольный модуль используется для записи сообщения. У него есть следующие методы -

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

настройки приложения

Модуль настроек приложения содержит метод управления настройками приложения. Чтобы добавить этот модуль, нам нужно добавить следующий код -

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

Некоторые методы, доступные в настройке приложения, следующие:

  • setBoolean (key: string, value: boolean) - установить логический объект

  • setNumber (key: string, value: number) - установить номер объекта

  • setString (key: string, value: string) - устанавливает строковый объект

  • getAllKeys () - содержит все сохраненные ключи

  • hasKey (key: string) - проверить, присутствует ли ключ

  • clear - очищает сохраненные значения

  • remove - удалить любую запись по ключу.

Простой пример использования настройки приложения выглядит следующим образом:

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

Этот модуль используется для обработки httpзапрос и ответ. Чтобы добавить этот модуль в свое приложение, добавьте следующий код -

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

Мы можем отправлять данные, используя следующие методы -

getString- Он используется для запроса и загрузки данных из URL в виде строки. Это определено ниже -

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

getJSON- Используется для доступа к данным из JSON. Это определено ниже -

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

getImage- загружает контент с указанного URL и возвращает объект ImageSource. Это определено ниже -

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

getFile - Он имеет два аргумента - URL и путь к файлу.

  • URL - скачивает данные.

  • File path- сохранить данные URL в файл. Это определено ниже -

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

request- У него есть аргумент вариантов. Он используется для запроса параметров и возврата объекта HttpResponse. Это определено ниже -

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

Источник изображения

image-source модуль используется save image. Мы можем добавить этот модуль, используя приведенный ниже оператор -

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

Если вы хотите загрузить изображения с ресурса, используйте приведенный ниже код -

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

Чтобы добавить изображение из локального файла, используйте следующую команду -

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

Чтобы сохранить изображение по пути к файлу, используйте следующую команду -

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!"); 
}

Таймер

Этот модуль используется для выполнения кода через определенные промежутки времени. Чтобы добавить это, нам нужно использоватьrequire -

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

Он основан на двух методах -

setTimeout- Используется для отсрочки исполнения. Он представлен в миллисекундах.

setInterval - Он используется для повторения через определенные промежутки времени.

След

Этот модуль полезен для отладки. Он дает информацию о регистрации. Этот модуль можно представить как -

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

Если вы хотите включить в своем приложении, используйте следующую команду -

traceModule.enable();

пользовательский интерфейс / изображение-кеш

Модуль image-cache используется для обработки запросов на загрузку изображений и кеширования загруженных изображений. Этот модуль можно представить, как показано ниже -

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

возможность подключения

Этот модуль используется для получения информации о подключении подключенной сети. Это можно представить как -

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

Функциональные модули

Функциональные модули включают множество модулей, специфичных для системы / платформы. Вот некоторые из важных модулей:

platform- Используется для отображения информации о вашем устройстве. Это можно определить, как указано ниже -

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

fps-meter- Используется для захвата кадров в секунду. Это можно определить, как указано ниже -

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

file-system- Используется для работы с файловой системой вашего устройства. Это определено ниже -

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

ui/gestures - Используется для работы с жестами пользовательского интерфейса.

Модуль пользовательского интерфейса

Модуль пользовательского интерфейса включает компонент пользовательского интерфейса и связанные с ним функции. Вот некоторые из важных модулей пользовательского интерфейса:

  • frame

  • page

  • color

  • text/formatted-string

  • xml

  • styling

  • animation