Я пытаюсь сделать динамический c pdf с помощью pdfMake в reactjs. Я могу сгенерировать PDF из данных stati c. Чтобы сделать его динамическим c, я создал функцию, которая принимает параметры, которые дополнительно устанавливают переменные объекта pdfMake. Однако, когда я обращаюсь к объекту, объект не обновлялся.
Пример кода для объекта и функции pdfMake (образец объекта не заполнен)
import { logo} from './pdf-logo';
var receipt_number=null;
var date_issued=null;
var status=null;
export const setDefinition=(id,created_date,invoice_status)=>
{
receipt_number=id;
date_issued=created_date;
status=invoice_status;
return dd;
}
var dd = {
content: [
{
columns: [
{
image: logo,
width: 150,
},
[
{
text: 'Receipt',
color: '#333333',
width: '*',
fontSize: 28,
bold: true,
alignment: 'right',
margin: [0, 0, 0, 15],
},
{
stack: [
{
columns: [
{
text: 'Receipt No.',
color: '#aaaaab',
bold: true,
width: '*',
fontSize: 12,
alignment: 'right',
},
{
text: receipt_number, //vaiable used
bold: true,
color: '#333333',
fontSize: 12,
alignment: 'right',
width: 100,
},
],
},
{
columns: [
{
text: 'Date Issued',
color: '#aaaaab',
bold: true,
width: '*',
fontSize: 12,
alignment: 'right',
},
{
text: date_issued, //variable used
bold: true,
color: '#333333',
fontSize: 12,
alignment: 'right',
width: 100,
},
],
},
{
columns: [
{
text: 'Status',
color: '#aaaaab',
bold: true,
fontSize: 12,
alignment: 'right',
width: '*',
},
{
text: status, //vaiable used
bold: true,
fontSize: 14,
alignment: 'right',
color: 'green',
width: 100,
},
],
},
],
},
],
],
}
};
Я импортирую функцию setDefinition в свой компонент счета-фактуры и назовите его некоторыми значениями. Например.
let obj=setDefinition('123345','10 July 2020','Paid');
cosole.log(obj)//not getting the updated object