我正在尝试在我的AngularJs网络应用中重现我在Slick.js中遇到的一个问题。Slick.js在我的网站上工作,但不在柱塞上工作。我不知道我错过了什么。
请参阅柱塞:http://plnkr.co/edit/35Sj5O?p=preview
以下是控制器中的主要代码:
<div class="slick-container" slick>
<div class="item" ng-repeat="photo in boat.photos" is-loaded>
<img ng-src="{{photo.url}}" />
</div>
</div>指令:
.directive('slick', function() {
function link(scope, element, attrs) {
$(document).ready(function () {
console.log("Slick called");
scope.$on('content-changed', function() {
console.log("Slick initialized");
$(".slick-container").not('.slick-initialized').slick(
{adaptativeHeight: true,
dots: true,
lazyLoad: 'ondemand'});
});
});
};
return {
link: link
};
})
.directive('isLoaded', function () {
return {
restrict: 'A',
link: function(scope, elem, attrs) {
if (scope.$last) {
scope.$emit('content-changed');
console.log('page Is Ready!');
}
}
};
})发布于 2020-01-03 09:00:41
使用以下代码更新您的directive.js文件
'use strict';
/* Directives */
angular.module('myApp.directives', [])
.directive('isLoaded', function () {
return {
restrict: 'A',
link: function(scope, elem, attrs) {
if (scope.$last) {
scope.$watch('content-changed', function (){
$(".slick-container").not('.slick-initialized').slick(
{adaptativeHeight: true,
dots: true,
lazyLoad: 'ondemand'});
})
console.log('page Is Ready!');
}
}
};
});https://stackoverflow.com/questions/59571770
复制相似问题