一个用于微信小程序的电子秤核心包
// 1. 在小程序开发工具
npm install wind-scale-miniprogram --save
// 2. 小程序开发工具选择 [工具] -> [构建npm]
不错的教程👇🏻👇🏻👇🏻
// $fxWeight为蓝牙电子秤实例
import { $fxWeight } from 'wind-scale-miniprogram'
// 失败会自动提示蓝牙未开启
$fxWeight.init().then(res => {
// 蓝牙开启成功
})
// 会自动连接上次连接的电子秤
$fxWeight.silentConnect()
// 扫描电子秤, 每当扫描到新的电子秤信息会触发findWeightFn内的回调
$fxWeight.scanWeight().then(({ devicesList, findWeightFn }) => {
this.setData({
deviceList: devicesList,
searchState: true,
connectDeviceId: ''
})
findWeightFn(devices => {
this.setData({
deviceList: devices
})
})
})
$fxWeight.stopScanWeight().then(() => {
this.setData({
searchState: false
})
})
$fxWeight.connectionWeight(deviceId, name).then(() => {
$fxWeight.notifyWeight(value => {
// type 称重类型
// weight 重量
// tare 去皮标记
// zero 置零标记
switch (value.type) {
// 稳定称重
case 'stable':
this.setData({
weight: value.weight,
tareFlag: value.tare,
zeroFlag: value.zero
})
break
// 不稳定称重
case 'unstable':
this.setData({
weight: value.weight
})
break
// 去皮
case 'tare':
this.setData({
tareWeight: value.weight
})
break
// 置零
case 'OkStable':
this.setData({
weight: value.weight,
tareFlag: value.tare,
zeroFlag: value.zero,
tareWeight: 0
})
console.log('设置置零成功')
break
// 去皮
case 'OKTare':
this.setData({
tareWeight: value.weight
})
console.log('设置去皮成功')
break
case 'OK':
console.log('设置成功')
this.setData({
tareWeight: 0
})
break
}
})
}).catch(() => {
this.setData({
connectDeviceId: ''
})
})
$fxWeight.closeWeight(deviceId).then(() => {
// .....
})
$fxWeight.getDeviceConnect()
$fxWeight.getDevicesList()
$fxWeight.getScanState()
$fxWeight.sendTareCode().then(res => {
})
$fxWeight.sendZeroCode().then(res => {
})
$fxWeight.notifyWeightConnectStateChange(this, res => {
// res.connected [boolean] 连接状态
// res.deviceId [string] 设备id
// res.deviceName [string] 设备名称
})
$fxWeight.openDebug()