gpt4 book ai didi

javascript - Angular 目录平滑执行

转载 作者:行者123 更新时间:2023-11-29 14:40:15 26 4
gpt4 key购买 nike

我正在使用以下插件:http://vasyabigi.github.io/angular-slick/

我也在使用 ng-repeat,所以我体验到它在 ng-repeat 完成之前执行。

有什么办法可以解决吗?

<slick><div ng-repeat="carfactory in vm.carfactory">
<h4> {{ carfactory.name }}</h4>
<p>
<img src="/biler/1.png" style="float: left; padding: 15px; max-width: 100px; height: auto; margin-bottom: 26px;">
</p>

<p><b>Pris:</b> {{ carfactory.price | currency }} kroner</p>
<p><b>Eier:</b> <a href="/">{{ carfactory.ownerid }}</a></p>

<p>
<b>Beskyttelse:</b> {{ carfactory.protection }}</p><p><b>Antall igjen:</b> <span id="antall_1">{{ carfactory.amount }}</span>
</p>

<p class="hotel-out">
<input ng-show="carfactory.amount > 0" class="btn btn-block" ng-click="vm.purchasecar(carfactory)" type="submit"value="Kjøp bil!">
<p class="hotel-in alert alert-warning" ng-show="carfactory.amount <= 0">Gå ut av hotell for å kjøpe en bil.</p>
</p>
</div></slick>

那行不通,但如果我删除中继器并复制+粘贴代码两次,它就可以工作。

知道如何让 ng-repeat 工作,或者我如何让 slicker 插件等待它完成加载吗?

编辑:

如果我执行 <slick init-onload="true" data="vm.carfactory"然后我收到以下错误:

slider.unslick is not a function

编辑:我的 Controller 正在使用 angular.module('garage',['slick'])

最佳答案

我的假设是在呈现 ng-repeat 中的项目之前调用 slick。当 ng-repeat 使用以下代码示例完成渲染时,您可以尝试(重新)执行 slick() 函数:

<div ng-repeat="carfactory in vm.carfactory" ng-init="$last && reloadSlick()">

$last变量确保仅针对最后一项(一次)调用该函数。

作为一项安全措施,您可以使用 setTimeout() 将代码包装在 reloadSlick() 中,以便等待下一个事件循环执行。

$scope.reloadSlick = function() {
setTimeout(function() {... code here ...})
}

更多关于ng-repeat渲染回调的引用:

关于javascript - Angular 目录平滑执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39299307/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com