时间:2023-09-02 17:18:02 | 来源:网站运营
时间:2023-09-02 17:18:02 来源:网站运营
Nodejs下微信网页开发教程(二):续上一篇文章Nodejs下微信网页开发教程(一)wx.config({ debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId: '', // 必填,公众号的唯一标识 timestamp: , // 必填,生成签名的时间戳 nonceStr: '', // 必填,生成签名的随机串 signature: '',// 必填,签名,见附录1 jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2});
完成这个目标的是在server/helper/weixinSignature.js
,该文件返回一个promise,然后在toController.js
中使用下面的代码:Promise.all([ request.getCityList(), getSignature(`${config.domain}/index`) ]) .then((result) => { console.log(result[1]) res.render('index.pug', { appId: config.appId, weixin: result[1], lists: result[0], nickname: data[0].nickname, openid: data[0].openid }) }).catch((err) => { console.error('Promise Error: ', err) res.render('404.pug', { msg: '获取用户信息失败,请重试' }) })
main.js
文件中调用了微信的扫码API:import $ from 'zepto'import 'weui/dist/style/weui.min.css'import './index.css'/* eslint no-console: 0 *//* eslint no-unused-vars: 0 */// eslint-disable-next-line prefer-arrow-callback$(function () { wx.ready(() => { // 微信扫码条形码 $('.g-index-button').on('click', () => { wx.scanQRCode({ needResult: 1, desc: 'scanQRCode desc', success(res) { console.log(JSON.stringify(res)); } }); }) })})
注意: 这里使用了zepto库,使用webpack打包zepto的时候需要在webpack.config.js中额外配置:plugins: [ ... new webpack.ProvidePlugin({ $: 'zepto/dist/zepto.min.js' }) ],module: { loaders: [ ... { test: require.resolve('zepto'), loader: 'exports?window.Zepto!script' } ]},
移动调试
有说明。此时的测试环境你只能通过微信的扫网站二维码来访问你的页面,所以需要你自己将域名转为二维码,然后微信扫码访问。weui-panel_ft
并且内嵌按钮的时候兼容性会出现问题padding-bottom
:.g-ta-right { text-align: right; padding-bottom: 10px;}
meta(name="viewport", content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0")
meta(name="format-detection", content="telephone=no")
对于某些特定的数字想要调用电话本的直接这么使用:a(href="tel:0571-88223300") 0571-88223300
submit
事件,所以我们可以有如下的代码:// 直接回车搜索城市列表 $('#searchBar .weui-search-bar__form').on('submit', (e) => { e.preventDefault(); citySearch() })
e.preventDefault();
阻止submit事件去刷新页面而只是用自己实现的ajax请求关键词:教程