簡體   English   中英

將ng-model作為指令angualjrs中的參數傳遞

[英]Pass ng-model as argument in directive angualjrs

我正在AngularJs編寫一個指令,我希望將ng-model作為參數傳遞。

<div class="col-md-7"><time-picker></time-picker></div>

該指令是:

    app.directive('timePicker', function () {
    return {
        restrict: 'E',
        replace: true,
        template: '<input type="text" class="form-control time-picker" ng-model="emp.signin">',
        link: function ($scope, element, form) {
            $(element).timepicker({'timeFormat': 'H:i:s'});
        }
    }
})

它工作正常,這里ng-modelemp.signin 我希望能夠動態地傳遞這個ng-model作為參數

這怎么可能?

您可以使用

<div class="col-md-7"><time-picker model-value="emp.signin"></time-picker></div>

app.directive('timePicker', function () {
    return {
        restrict: 'E',
        replace: true,
        template: '<input type="text" class="form-control time-picker"ng-model="modelValue ">',
        scope: {
            modelValue : '=',
        }
        link: function ($scope, element, form) {
            $(element).timepicker({'timeFormat': 'H:i:s'});
        }
    }
})

“=”前綴將在父和指令范圍之間創建雙向綁定,並且它總是希望屬性值是模型名稱,這意味着您不能提供表達式作為映射到“=”前綴的屬性值。

供參考:“ http://www.undefinednull.com/2014/02/11/mastering-the-scope-of-a-directive-in-angularjs/

暫無
暫無

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

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