виджет) от cloudpayments.
"По умолчанию" сам виджет полностью на jquery сделан. Интеграция описана тут: https://developers.cloudpayments.ru/#ustanovka-vidzheta
jquery прицепил, пытаюсь вцепить вот так:
components: {
cp: () => {
return new Promise((resolve, reject) => {
let script = document.createElement('script');
script.onload = () => { resolve(import(cp)); }
script.async = true;
script.src = 'https://widget.cloudpayments.ru/bundles/cloudpayments';
document.head.appendChild(script);
})
},
}
...
и потом "инициализация":
mounted(){
this.pay = function (){
var widget = new cp.CloudPayments();
widget.pay('auth', {});
}
},
При попытке вызова pay получаю:
[Vue warn]: Error in v-on handler: "TypeError: cp.CloudPayments is not a constructor"
Что я делаю не так?
PS. jQuery отдельно тоже знаю, но опыт "скрещивания" Vue+jQuery первый раз :(
и, кстати, валить джиквери в вью проект - плохая практика
Я это говорил "заказчику". Есть "политические нюансы". Потому и подгружается и jquery, и cloudpay только в один компонент на mount, чтоб больше не лезло нигде.
Я уже разобрался - он не нужен :) Он там "прилеплен" только "для привязки кнопки". Уже выкинул :)
Обсуждают сегодня