angular.js - angularjs中directive的ng-click為什麼不能傳遞參數
滿天的星座
滿天的星座 2017-05-15 17:11:35
0
3
569

先定義一個directive:

app.directive('conversation', [function() {
    return {
        restrict: 'E',
        templateUrl: 'conversation.html?date' + new Date().getTime(),
        replace: true,
        scope:{
            conversations:"=",
            changeConversation: "&"
        },
        link:function(scope, element, attributes){

        }
    };
}]);

呼叫

<conversation conversations="conversations" change-conversation="changeConversation(conversation)"></conversation>

<ul class="mdui-list">
    <li class="mdui-list-item mdui-ripple" ng-repeat="conversation in conversations" ng-click="changeConversation(conversation)">
        <p class="mdui-list-item-avatar">
            <img ng-src="{{conversation.chatThumbLogo}}"/>
        </p>
        <p class="mdui-list-item-content">
            <p class="mdui-list-item-title">{{conversation.chatName}}</p>
            <!--<p class="mdui-list-item-text mdui-list-item-one-line">hello world</p>-->
            <span class="im_badge" ng-bind="conversation.unreadCount" ng-if="conversation.unreadCount > 0"></span>
        </p>
    </li>
    <li class="mdui-pider-inset mdui-m-y-0"></li>
</ul>

ng-click觸發函數後不能印出conversation,undefined。

 $scope.changeConversation = function (conversation) {
        console.log(conversation);
    }
滿天的星座
滿天的星座

全部回覆(3)
世界只因有你
$scope.changeConversation = function (conversation);

這裡是parent的scope,你parent的scope裡並沒有conversation這個變數。

给我你的怀抱

我也覺著是@熊丸子说的那样,conversation這個變數不是父級的

我想大声告诉你

conversation 這個directive restrict: 'E', 是element ,你沒有在template引用

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!