English 中文(简体)
NativeScript - Modules
  • 时间:2024-10-18

NativeScript - Modules


Previous Page Next Page  

A NativeScript Module contains a set of related functionapties packaged as single pbrary. Let us learn the modules provided by NativeScript framework.

It contains core functionapties of the NativeScript framework. Let us understand the core modules in this chapter.

Apppcation

Apppcation contains platform specific implementation of mobile apppcation. Simple core module is defined below −


const apppcationModule = require("tns-core-modules/apppcation");

Console

Console module is used to log message. It has the following methods −


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

apppcation-settings

apppcation-settings module contains method to manage apppcation settings. To add this module, we need to add the following code −


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

Few methods available in the apppcation-setting are as follows −

    setBoolean(key: string, value: boolean) - set boolean object

    setNumber(key: string, value: number) - set number object

    setString(key: string, value: string) - sets string object

    getAllKeys() - Contains all stored keys

    hasKey(key: string) - check whether a key present or not

    clear - clears stored values

    remove - remove any entry based on key.

A simple example using apppcation setting is as follows −


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

This module is used for handpng http request and response. To add this module in your apppcation, add the following code −


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

We can send data using the following methods −

getString − It is used to make request and downloads the data from URL as string. It is defined below −


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

getJSON − It is used to access data from JSON. It is defined below −


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

getImage − downloads the content from specified URL and return ImageSource object. It is defined below −


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

getFile − It has two arguments URL and file path.

    URL − downloads the data.

    File path − save URL data into the file. It is defined below −


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

request − It has options argument. It is used to request options and return HttpResponse object. It is defined below −


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

Image-source

image-source module is used save image. We can add this module using the below statement −


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

If you want to load images from resource, use the below code −


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

To add image from local file, use the below command −


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

To save image to the file path, use the below command −


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

This module is used to execute code at specific time intervals. To add this, we need to use require


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

It is based on two methods −

setTimeout − It is used to delay the execution. It is represented as milpseconds.

setInterval − It is used to apply recurring at specific intervals.

Trace

This module is useful for debugging. It gives the logging information. This module can be represented as −


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

If you want to enable in your apppcation then use the below command −


traceModule.enable();

ui/image-cache

image-cache module is used to handle image download requests and caches downloaded images. This module can be represented as shown below −


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

connectivity

This module is used to receive the connection information of the connected network. It can be represented as −


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

Functionapty Modules

Functionapty modules include lot of system/platform specific modules. Some of the important modules are as follows −

platform − Used to display the information about your device. It can be defined as given below −


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

fps-meter − Used to capture frames per second. It can be defined as given below −


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

file-system − Used to work with your device file system. It is defined below −


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

ui/gestures − Used to work with UI gestures.

UI module

UI module includes the UI component and its related functionapty. Some of the important UI modules are as follows −

    frame

    page

    color

    text/formatted-string

    xml

    stypng

    animation

Advertisements