@icanvas/apis
Version:
这是icanvas的Api功能包
34 lines (33 loc) • 883 B
JavaScript
/**
* 获得一个canvas对象
*
* @param {String} key 特殊模版标识
*
* 打包模式为wxgame时
* key取share则获得主域内开放canvas
* key取shared则获得开发域内开放canvas
* 打包模式为web时
* key取main则该canvas将上屏
*/
let GetCanvas = function(key) {
if (ENV.core == 'wxgame') {
if (key == 'main') return GetCanvas.main;
if (key == 'share') {
let context = wx.getOpenDataContext();
context.canvas.getContext = () => context;
return context.canvas;
}
if (key == 'shared' && typeof wx.getSharedCanvas == 'function') return wx.getSharedCanvas();
return wx.createCanvas();
} else {
if (key == 'main') {
let main = GetCanvas.main;
document.body.appendChild(main);
return main;
}
let canvas = document.createElement('canvas');
return canvas;
}
};
GetCanvas.main = GetCanvas();
export default GetCanvas;