如何覆盖 odoo 12 中的 _createStripeToken 函数
How to override the _createStripeToken function in odoo 12
我正在寻找一种方法来覆盖 odoo 12 中 payment_stripe_sca 模块的 _createStripeToken 函数。
我是这样做的,但是 console.log 没有显示。如果我将此控制台日志添加到原始控制台日志中,则会显示
PaymentForm.include({
/**
* @override
* @private
* @param {Event} ev
* @param {DOMElement} checkedRadio
* @param {Boolean} addPmEvent
*/
_createStripeToken: function (ev, $checkedRadio, addPmEvent) {
console.log("Adfadsfasdfasdfas")
}
})
您需要 patch 付款表格 class 并将 js 文件添加到前端资产 (web.assets_frontend
)。
覆盖 _createStripeToken
函数:
odoo.define('stack_overflow.payment_form', function (require) {
"use strict";
var PaymentForm = require('payment.payment_form');
PaymentForm.include({
_createStripeToken: function (ev, $checkedRadio, addPmEvent) {
var self = this;
console.log("Adfadsfasdfasdfas");
return this._super.apply(this, arguments);
},
});
});
将文件添加到前端资源:
<template id="assets_frontend" inherit_id="web.assets_frontend" name="Payment Stripe SCA Assets">
<xpath expr="." position="inside">
<script type="text/javascript" src="/stack_overflow/static/src/js/payment_form.js"></script>
</xpath>
</template>
查看 assets management 了解详情。
我正在寻找一种方法来覆盖 odoo 12 中 payment_stripe_sca 模块的 _createStripeToken 函数。
我是这样做的,但是 console.log 没有显示。如果我将此控制台日志添加到原始控制台日志中,则会显示
PaymentForm.include({
/**
* @override
* @private
* @param {Event} ev
* @param {DOMElement} checkedRadio
* @param {Boolean} addPmEvent
*/
_createStripeToken: function (ev, $checkedRadio, addPmEvent) {
console.log("Adfadsfasdfasdfas")
}
})
您需要 patch 付款表格 class 并将 js 文件添加到前端资产 (web.assets_frontend
)。
覆盖
_createStripeToken
函数:odoo.define('stack_overflow.payment_form', function (require) { "use strict"; var PaymentForm = require('payment.payment_form'); PaymentForm.include({ _createStripeToken: function (ev, $checkedRadio, addPmEvent) { var self = this; console.log("Adfadsfasdfasdfas"); return this._super.apply(this, arguments); }, }); });
将文件添加到前端资源:
<template id="assets_frontend" inherit_id="web.assets_frontend" name="Payment Stripe SCA Assets"> <xpath expr="." position="inside"> <script type="text/javascript" src="/stack_overflow/static/src/js/payment_form.js"></script> </xpath> </template>
查看 assets management 了解详情。