在写项目的时候遇到的一个需求,登录和注册都可以通过扫描微信的二维码来实现,但是在做的时候发现微信有一些它自带的样式,并且无法通过CSS直接修改。
通过查微信的开发者文档发现是支持修改的
wxHandle () {
var obj = new WxLogin({
id: "",
appid: ,
scope: "",
redirect_uri: '',
state: "",
style: "",
href: "xxx.css"//url地址
});
},
在实例化对象的 href属性中写入你的样式地址(例:把已经写好的样式放入xxx.css)即可,但是如果直接输入你的本地url地址会报错,所以需要把地址转换为https的。
解决方法
通过Node.js脚本转换地址,写一个node.js脚本
var fs = require('fs');
// function to encode file data to base64 encoded string
function base64_encode(file) {
// read binary data
var bitmap = fs.readFileSync(file);
// convert binary data to base64 encoded string
return 'data:text/css;base64,'+new Buffer(bitmap).toString('base64');
}
console.log(base64_encode('./xxx.css'))
然后运行路径下的node.js,就会打印出href:"data:text/css;base64开头的url,把打印出来的url,放到href里面即可。