angularjs通过html将变量传递给组件

时间:2017-04-29 07:15:12

标签: angularjs angular-components

我目前有这个组件:

angular.module('myApp.viewVendor').
component('modifyOrder', {
templateUrl: 'app/view-vendor/confirm-order/modify-order.template.html',
bindings: {orderId: '<'},
controller: ['OrdersApi',
    class ModifyOrderComponent {
        constructor(OrdersApi) {
            this.OrdersApi = OrdersApi;
            this.vendorNotes = null;
            console.log(this.orderId)
        }
    }
]
});

当我在我的html中使用它时:

<modify-order orderId={{$ctrl.orderId}}></modify-order>

我得到了#undefined&#39;打印到控制台。最初我试图将它传递给$ mdDialog,但这样做不是这样的:

modifyOrder(ev) {
            this.$mdDialog.show({
                template: '<modify-order orderId="' + this.orderId + '"></modify-order>',
                parent: angular.element(document.body),
                targetEvent: ev,
                clickOutsideToClose:true
            })
                .then(function(answer) {

                }, function(error) {

                });
        }

它不适用于普通的html或mdDialog。在这一点上,我无法判断它是否是语法或其他错误。

1 个答案:

答案 0 :(得分:1)

这是角度中已知的错误:

https://github.com/angular/material/issues/8409