如何在VueJs中将值从函数传递给变量?

问题描述 投票:0回答:1

我正在获取图像URL的base64。当我将getImage function传递给savepdf funcion并尝试将回调函数base64_data存储在变量中时,它将引发错误[ data() { return { base64logo: '', } }, methods: { getImage(url, callback) { var img = new Image(); img.crossOrigin = 'Anonymous'; img.onload = function () { var canvas = document.createElement('CANVAS'); console.log('canvas', canvas) var ctx = canvas.getContext('2d'); var dataURL; canvas.height = this.height; canvas.width = this.width; ctx.drawImage(this, 0, 0); dataURL = canvas.toDataURL(); callback(dataURL); canvas = null; }; img.src = url; }, savepdf() { this.getImage(this.clientDetails.company_logo, function (base64_data) { console.log('base64_data', base64_data); this.base64logo = base64_data; //Error HERE }); var doc = new jsPDF('p', 'pt', 'a4'); doc.setFontSize(9); doc.addImage(this.base64logo, 'PNG', 150, 10, 40, 20); //Have to pass here. } }

我正在获取图像URL的base64。当我将getImage函数传递给savepdf函数并尝试将回调函数base64_data存储在变量中时,会引发无法设置属性'base64logo'...]的错误。
javascript vue.js callback jspdf
1个回答
0
投票
您应该使用箭头功能()=>{...}来访问this组件实例:
© www.soinside.com 2019 - 2024. All rights reserved.