Jef*_*ado 5 javascript vue.js vuejs2
我正在创建与支付服务的集成。支付服务为我提供了一个带有脚本标签的表单,我想在我的组件模板中插入带有脚本标签的表单,但是 vue 不允许在模板中插入标签脚本,我该如何插入带有脚本的表单在我的模板组件中标记?
带有结帐服务的表格:
<form action="http://localhost:8081/api/v1/payment/" method="POST">
<script
src="https://www.mercadopago.com.br/integrations/v1/web-tokenize-checkout.js"
data-public-key="KEY"
data-transaction-amount="14.90">
</script>
</form>
Run Code Online (Sandbox Code Playgroud)
预期结果:我的组件:
<template>
<div id="dashboard">
<form action="http://localhost:8081/api/v1/payment/" method="POST">
<script
src="https://www.mercadopago.com.br/integrations/v1/web-tokenize-checkout.js"
data-public-key="KEY"
data-transaction-amount="14.90">
</script>
</form>
</div>
</template>
<script>
import { mapState } from "vuex";
export default {
data() {
return {}
},
}
</script>
Run Code Online (Sandbox Code Playgroud)
您可以使用元素引用和 vanilla JS 将相关标签添加到 dom。
<form ref="myform">
...
</form>
mounted() {
let foo = document.createElement('script');
foo.setAttribute("src","https://www.mercadopago.com.br/integrations/v1/web-tokenize-checkout.js");
foo.setAttribute("data-transaction-amount", "14.90")
this.$refs.myform.appendChild(foo);
}
Run Code Online (Sandbox Code Playgroud)