nativescript-passportscanner
适用于 Android 和 iOS 的护照扫描器 NativeScript 模块
npm i --save nativescript-passportscanner

NativeScript 手电筒插件

一个用于在 NativeScript Android 和 iOS 应用中使用设备手电筒的插件。

安装

从项目的根目录运行以下命令

$ tns plugin add nativescript-flashlight

此命令将自动安装必要的文件,并将 nativescript-flashlight 作为依赖项存储在项目中的 package.json 文件中。

使用方法

要使用手电筒模块,您必须首先 require()

// JavaScript
var flashlight = require("nativescript-flashlight");

或者如果您正在使用 TypeScript,则 import 该模块

// TypeScript
import * as flashlight from "nativescript-flashlight";

在您获得模块引用后,您可以调用其 on()off()toggle() 方法。例如,下面的代码将设备的闪光灯以 25% 的 intensity 设置打开。

可选的 intensity 仅在 iOS 上受支持,默认值为 1.0,即 100% 亮度。

// my-page.js
var flashlight = require("nativescript-flashlight");
flashlight.on({
intensity: 0.25
});

在大多数情况下,您会希望将 on() 调用包装在 isAvailable() 检查中,以处理没有手电筒的设备。

// my-page.js
var flashlight = require("nativescript-flashlight");
if (flashlight.isAvailable()) {
flashlight.on();
} else {
alert("A flashlight is not available on your device.");
}

示例

以下代码创建了一个按钮,可以切换设备的闪光灯

<!-- my-page.xml -->
<Page loaded="pageLoaded">
<StackLayout>
<Button text="{{ flashlightState }}" tap="{{ toggleFlashlight }}" />
</StackLayout>
</Page>
// my-page.js
var flashlight = require("nativescript-flashlight");
var observable = require("data/observable");
var viewModel = new observable.Observable();

// Set the initial text of the button
viewModel.set("flashlightState", "Turn on");

// A tap handle for the page's button. Toggle the state of the flashlight
// and the button's text
viewModel.toggleFlashlight = function() {
if (flashlight.isAvailable()) {
flashlight.toggle({
intensity: 0.6 // optional, supported on iOS only (default: 1.0 which is 100% brightness)
});
viewModel.set("flashlightState", (flashlight.isOn() ? "Turn off" : "Turn on"));
} else {
alert("A flashlight is not available on your device.");
}
};

function pageLoaded(args) {
var page = args.object;
page.bindingContext = viewModel;
}

exports.pageLoaded = pageLoaded;