我知道,无论Watchers与Observers就将计算在东西$scope在AngularJS变化.但无法理解两者之间究竟有什么区别.
我最初的理解是Observers为角度表达式计算,这是HTML一侧的条件,Watchers执行$scope.$watch()函数时执行.我在想什么?
我有一个auto-carousel指令迭代链接元素的子元素.
然而,子节点尚未加载到DOM中,因为它们ng-if的表达式尚未被解析.
如何确保父指令知道它的DOM树有变化?
<ul class="unstyled" auto-carousel>
<li class="slide" ng-if="name">{{name}}</li>
...
<li class="slide" ng-if="email">{{email}}</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我可以使用,$timeout但感觉不可靠.我也可以使用ng-show而不是ng-if但不回答问题,而不是我需要的问题.
我使用这个程序github.com/vasyabigi/angular-slick.它不适用于动态数据.它只适用于静态数据.在动态数据中,它显示水平放置的垂直图像,没有Carouseling.请帮助我.这是我的精力充沛
directive('slick',function($timeout) { return {
restrict: "AEC",
scope: {
initOnload: "@",
data: "=",
currentIndex: "=",
accessibility: "@",
arrows: "@",
autoplay: "@",
autoplaySpeed: "@",
centerMode: "@",
centerPadding: "@",
cssEase: "@",
dots: "@",
draggable: "@",
easing: "@",
fade: "@",
infinite: "@",
lazyLoad: "@",
onBeforeChange: "@",
onAfterChange: "@",
onInit: "@",
onReInit: "@",
pauseOnHover: "@",
responsive: "&",
slide: "@",
slidesToShow: "@",
slidesToScroll: "@",
speed: "@",
swipe: "@",
touchMove: "@",
touchThreshold: "@",
vertical: "@"
},
link: function(scope, element, attrs) {
var initializeSlick, isInitialized; …Run Code Online (Sandbox Code Playgroud)