Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.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 &引用;加上“更多”;指令加载_Angularjs_Angularjs Directive - Fatal编程技术网

Angularjs &引用;加上“更多”;指令加载

Angularjs &引用;加上“更多”;指令加载,angularjs,angularjs-directive,Angularjs,Angularjs Directive,在“添加更多”按钮中添加指令的正确方法是什么? 我有一个呈现html的指令。仅在templateUrl中使用它就可以了。 现在,我想让用户通过“addmore”按钮加载更多相同的指令 这样做的正确方法是什么?在您的范围内有一系列内容和一个添加内容的函数: $scope.things = [ { id: 1, name: 'thing 1' }, { id: 2, name: 'thing 2' }, { id: 3, name: 'thing 3' } ]; $scope.a

在“添加更多”按钮中添加指令的正确方法是什么? 我有一个呈现html的指令。仅在templateUrl中使用它就可以了。 现在,我想让用户通过“addmore”按钮加载更多相同的指令
这样做的正确方法是什么?

在您的范围内有一系列内容和一个添加内容的函数:

$scope.things = [ { id: 1, name: 'thing 1' }, 
    { id: 2, name: 'thing 2' },
    { id: 3, name: 'thing 3' }
];

$scope.addThing = function(){
    $scope.things.push( { id: 4, 'thing 4' } );
}
在视图中,可以使用ngRepeat指令显示事物列表:

<my-directive ng-repeat='thing in things' thingy='thing'><my-directive>

以及添加更多内容的按钮:

<button type='button' ng-click='addThing()'>Add a thing</button>
添加一个东西

和往常一样,我想我在发帖2分钟后找到了答案。。。 这是我的控制器

.controller('LatestMovementsCtrl', function($scope, $compile) {
   $scope.load_more = function() {
   var newElement = $compile( '<my-directive line="data1" class="balance_item_main"></my-directive>' )( $scope );
    jQuery('#load_more_data').append(newElement.hide().fadeIn(1000));
  }
})
.controller('LatestMovementsCtrl',函数($scope,$compile){
$scope.load_more=函数(){
var newElement=$compile(“”)($scope);
jQuery('#加载更多数据').append(newElement.hide().fadeIn(1000));
}
})

如果有任何一个1有更好的解决方案,我很想听听

不清楚您尝试了什么,或者您遇到了什么问题,请详细说明。控制器中的任何DOM操作都不应包含代码?我不理解您的问题。你能解释得更清楚一点吗?啊,对不起?代替疑问这个词。。。这还不清楚。在角度DOM操作中,只是说不应该从控制器内操作DOM元素,应该只在指令内完成。粗暴的兔子的回答显示了做事的方式更加棱角分明。您有一个从视图绑定的模型,而控制器/模型根本不知道该视图(这样,尽管视图存在,但可以测试并重新使用控制器)。您建议我如何进行淡入?现在,当我推送项目时,它会立即显示出来,没有褪色的影响。请看一看使用jQuery动画或angular和CSS描述的内容。如何仅向我推送的新项目添加一个类?如果我在指令中有一个类,它将启动屏幕上已经出现的项目。它解释了angular将类ng enter添加到新添加的项中。因此,如果您有一个名为“thing”的类,您可以添加一个CSS规则targeting.thing.ng-enter