簡體   English   中英

Angular JS組件綁定

[英]Angular JS Component Binding

我有以下組件:

(function () {
    "use strict";
    angular.module("application_module")
        .component('tab', {
            controller: 'TabCtrl',
            templateUrl: 'app/component/application/app-header/tab/tab.html',
            bindings: {
                'pageName': '<',
                'pageNo': '<'
            }
        });
})();

它的html模板:

<md-nav-item md-nav-click="$ctrl.goto($ctrl.pageNo)"
             name="$ctrl.pageNo">
    {{$ctrl.pageName}}
</md-nav-item>

它的控制器:

(function () {
    "use strict";

    angular.module("application_module")
        .controller('TabCtrl', TabCtrl);

    function TabCtrl() {
        let self = this;
    }
})();

我嘗試使用以下代碼:

<tab pageName="EmployeeInfo" pageNo="page1"></tab>

我沒有在渲染頁面的最終html中看到pageNamepageNo 怎么了?

問題出在camelCase上,我們使用了lowcase:

<tab pagename="EmployeeInfo" pageno="page1"></tab> 

在組件中:

bindings: {
    'pagename': '@',
    'pageno': '@'
}

它現在可以正常工作了。

您需要將綁定屬性名稱轉換為使用連字符和小寫字符。 所以對於你的例子:

<tab page-name="EmployeeInfo" page-no="page1"></tab>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM