本文目錄一覽:
- 1、js的回調函數怎麼寫,
- 2、小程序app.js和page中js載入順序
- 3、小程序 使用upng.js 把小程序選擇的圖片轉換為base64
- 4、微信小程序外部js執行自動調用某些代碼
- 5、怎樣用js開發微信小程序
js的回調函數怎麼寫,
in是js保留字,不能用作函數名,否則會語法錯誤,可以改為其他比如in1
此外代碼也要做些修改才行,見下面:
script
function in1(a,b){ //不能用in作為函數名,加個數字就保險了
return a()+b(); //要加括弧函數才會執行
}
function o(){
return 1;
}
function t(){
return 2;
}
document.write(in1(o,t)); //直接輸出即可
/script
小程序app.js和page中js載入順序
你把app.js放在前面不就先載入嗎?不行你把impower粘貼到app的後面只引入APP試試
小程序 使用upng.js 把小程序選擇的圖片轉換為base64
有時候會遇到後端需要前端獲取的圖片文件轉換成base64,在傳給後台
小程序有專門的選擇圖片介面,
wx.chooseImage(OBJECT)
但是這個只是返回一個圖片的臨時路徑,並不是文件數據本身。
小程序暫時沒有介面直接轉base64的
所以我們需要使用canvas和canvasGetImageData(小程序版本1.9.0以後要才有)先獲取圖片內容,
再通過插件upng.js插件實現圖片轉base64(所需插件文件附件中)
1. 把upng.js和pako.min.js文件放到項目中
2. 在pages下的頁面js文件中導入
var upng = require(‘../../utils/upng.js’);
這裡只需要導入npng.js ,pako.min.js是在npng,js裡面調用
3. 建一個canvas
chooseImage”人臉測試
// 畫布
// 生成base64點陣圖片展示 變數imgbase64
need-to-insert-img
4. 添加js點擊chooseImage事件
chooseImage: function() {
var that = this;
var coss_signature = wx.getStorageSync(‘cos_signature’);
var canvasID = “imgCanvas”;
var canvas = wx.createCanvasContext(canvasID)
wx.chooseImage({
sourceType: [‘album’, ‘camera’],
sizeType: [‘original’],
count: 1,
success: function (res) {
var tempFilePaths = res.tempFilePaths;
// 獲取文件路徑
var filePath = tempFilePaths[0];
// 1. 繪製圖片至canvas
canvas.drawImage(filePath, 0, 0, 300, 200)
// 繪製完成後執行回調,API 1.7.0
canvas.draw(false, function(res){
// 2. 獲取圖像數據, API 1.9.0
wx.canvasGetImageData({
canvasId: canvasID,
x: 0,
y: 0,
width: 300,
height: 200,
success(res) {
// 3. png編碼
let pngData = upng.encode([res.data.buffer], res.width, res.height)
// 4. base64編碼
let base64 = wx.arrayBufferToBase64(pngData)
// …
that.setData({
imgbase64: base64
})
}
})
})
}
})
}
5. 實現
need-to-insert-img
need-to-insert-img
tips
畫布畫的圖片的長和寬是固定的,這個按照自己需求設置。
可以通過小程序的
wx.getImageInfo(OBJECT)
獲取長和寬
相關鏈接
upng.js:
wx-cardscanner: 有時候會遇到後端需要前端獲取的圖片文件轉換成base64,在傳給後台
小程序有專門的選擇圖片介面,
但是這個只是返回一個圖片的臨時路徑,並不是文件數據本身。
小程序暫時沒有介面直接轉base64的
所以我們需要使用canvas和canvasGetImageData(小程序版本1.9.0以後要才有)先獲取圖片內容,
再通過插件upng.js插件實現圖片轉base64(所需插件文件附件中)
1. 把upng.js和pako.min.js文件放到項目中
2. 在pages下的頁面js文件中導入
var upng = require(‘../../utils/upng.js’);
這裡只需要導入npng.js ,pako.min.js是在npng,js裡面調用
3. 建一個canvas
chooseImage”人臉測試
// 畫布
// 生成base64點陣圖片展示 變數imgbase64
4. 添加js點擊chooseImage事件
chooseImage: function() {
var that = this;
var coss_signature = wx.getStorageSync(‘cos_signature’);
var canvasID = “imgCanvas”;
var canvas = wx.createCanvasContext(canvasID)
wx.chooseImage({
sourceType: [‘album’, ‘camera’],
sizeType: [‘original’],
count: 1,
success: function (res) {
var tempFilePaths = res.tempFilePaths;
// 獲取文件路徑
var filePath = tempFilePaths[0];
// 1. 繪製圖片至canvas
canvas.drawImage(filePath, 0, 0, 300, 200)
// 繪製完成後執行回調,API 1.7.0
canvas.draw(false, function(res){
// 2. 獲取圖像數據, API 1.9.0
wx.canvasGetImageData({
canvasId: canvasID,
x: 0,
y: 0,
width: 300,
height: 200,
success(res) {
// 3. png編碼
let pngData = upng.encode([res.data.buffer], res.width, res.height)
// 4. base64編碼
let base64 = wx.arrayBufferToBase64(pngData)
// …
that.setData({
imgbase64: base64
})
}
})
})
}
})
}
5. 實現
tips
畫布畫的圖片的長和寬是固定的,這個按照自己需求設置。
可以通過小程序的
獲取長和寬
相關鏈接
upng.js:
wx-cardscanner:
微信小程序外部js執行自動調用某些代碼
這個簡單,主要要使用 小程序的生命周期函數,然後利用模塊化載入得方式,將外部js引入,在不同的生命周期階段調用即可。
怎樣用js開發微信小程序
微信小程序之js
如果你想開發一款微信小程序學會微信小程序的js是必須要精通的,只要你html+css+js的基礎打的好在來全力的學習微信小程序js,之後在前端開發上就沒有什麼問題了,但是微信js是需要花精力去學習的,可以買一本參考書或者了解下微信小程序的api都是可以快速的幫助你介入開發的隊列。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/185799.html