Angularjs 是否将PayPal结帐按钮的样式更改为Angular.js组件?
当将按钮用作指令时,如何设置按钮的Angularjs 是否将PayPal结帐按钮的样式更改为Angular.js组件?,angularjs,paypal,paypal-buttons,Angularjs,Paypal,Paypal Buttons,当将按钮用作指令时,如何设置按钮的样式选项 this.paypal = { // ... style: { color: 'black', shape: 'rect' } } 似乎style选项不能作为style在绑定中传递,因为这已经是一个保留的HTMLElement属性了 <paypal-button client="$ctrl.paypal.client" commit="true" env="$ctrl.paypal.env" styl
样式
选项
this.paypal = {
// ...
style: {
color: 'black',
shape: 'rect'
}
}
似乎style
选项不能作为style
在绑定中传递,因为这已经是一个保留的HTMLElement
属性了
<paypal-button
client="$ctrl.paypal.client"
commit="true"
env="$ctrl.paypal.env"
style="$ctrl.paypal.style"
on-authorize="$ctrl.paypal.onAuthorize"
on-cancel="$ctrl.paypal.onCancel"
payment="$ctrl.paypal.payment">
</paypal-button>
明白了,你必须使用
ng attr style=“$ctrl.paypal.style”
它就会工作
ng attr style
允许您计算表达式,而不是为该输入元素的style
属性解释字符串文字。完整的解释可以在标题“绑定到任意属性的ngAttr”下找到 有关在指令内部的paypalbutton上应用syles的工作代码,请参阅
您可以将整个paypal变量传递给控制器范围内的指令
scope: {
paypal: '='
},
然后可以将变量绑定到模板
<test-directive paypal="$ctrl.paypal"></test-directive>
(函数(){
var-app=angular.module(“myApp”,“ui.bootstrap”,“paypal按钮”);
app.controller('testCtrl',['$scope',函数($scope){
var$ctrl=this;
$ctrl.paypal={
环境:“沙盒”,
客户:{
沙箱:“AWi18rxt26-HRUEMOPZ0TPGEOJNNT4QKIMQST9PYGAQNAFS1FLFXKXQUIAQRBJ1VVV5PMGHX_jA_c1ncL”,
生产:''
},
支付:功能(){
var env=this.props.env;
var client=this.props.client;
返回paypal.rest.payment.create(环境、客户端、{
交易:[{
金额:{
总计:“1.00”,
货币:美元
}
}]
});
},
提交:true,//可选:在签出流中显示“立即付款”按钮
onAuthorize:函数(数据、操作){
//可选:在此处显示确认页面
返回actions.payment.execute().then(function()){
//向买家显示成功页面
});
},
风格:{
颜色:'黑色',
形状:“rect”
}
};
}]);
app.directive('testDirective',[函数(){
返回{
限制:'E',
模板:“”,
范围:{
贝宝:'='
},
链接:功能(范围、元素、属性、控制器){
}
};
}]);
}());代码>
感谢您的回答,但我并不想覆盖PayPal Checkout按钮的样式(这很难,因为它通过iframe嵌入到页面中)。我只是想知道如何设置Angular.js组件的
style`参数,因为style
已经是一个有效的HTMLElement属性。