最近在做智慧酒店的产品,遇到一个需求挺有趣,酒店想让用户扫码后一键连接wifi
废话就不说了,直接上demo[HTML] 纯文本查看 复制代码 <template>
<view class="content">
<view class="item">
<text class="title center">wifi信息</text>
<text class="title">wifi名称:{{wifiname}}</text>
<text class="title">wifi密码:{{wifikey}}</text>
</view>
<view>
<button @click="yxxwifi">点击连接wifi</button>
</view>
</view>
</template>
<script>
export default {
data() {
return {
wifiname: '小羊的wifi',
wifikey: '88888888',
}
},
onLoad() {
// this.yxxwifi();
},
methods: {
yxxwifi() {
// 初始化WiFi模块
wx.startWifi({
success: () => {
// 如果能成功初始化,说明WiFi已开启
uni.showToast({
title: 'WiFi已开启'
});
},
fail: (err) => {
if (err.errCode === 12006) {
uni.showToast({
title: '请先打开手机WiFi',
icon: 'none'
});
} else {
uni.showToast({
title: 'WiFi模块初始化失败',
icon: 'none'
});
console.error('WiFi模块错误:', err);
}
}
});
// 连接 WiFi
wx.connectWifi({
SSID: this.wifiname,
password: this.wifikey,
success: () => {
uni.showToast({
title: '连接成功'
});
},
fail: (err) => {
uni.showToast({
title: '连接失败',
icon: 'none'
});
console.error(err);
}
});
}
}
}
</script>
<style scoped lang="scss">
.container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.item {
display: flex;
flex-wrap: wrap;
.title {
flex-basis: 100%;
padding: 20rpx;
border: 1rpx solid #eee;
margin-bottom: 10rpx;
}
.center {
text-align: center;
}
}
</style>
|