Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 是否将PayPal结帐按钮的样式更改为Angular.js组件?_Angularjs_Paypal_Paypal Buttons - Fatal编程技术网

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属性。