我正在使用reveal.js。我的幻灯片保存在json对象中。出于某种原因,输出只是一张幻灯片,所有内容都被覆盖!这是我的代码:
<div class="reveal">
<div class="slides" data-ng-controller="myControl">
<section data-ng-repeat="slide in allSlide">
{{slide}}
</section>
</div>
</div>
和我的js代码
$scope.allSlide = [...];
我在代码here中发现reveal.js与ng-repeat一起使用但是我的问题是什么? 任何帮助赞赏。 更新:脚本包含在下面的html文件末尾:
<script src="lib/js/head.min.js"></script>
<script src="js/reveal.js"></script>
<script>
Reveal.initialize({
});
</script>
答案 0 :(得分:2)
这很困难,因为在reveal.js尝试将HTML解释为幻灯片放映时,angularJS不会完成渲染。您可以尝试以下内容,该内容来自您发布的工作链接:
<script>
setTimeout(function() {
Reveal.initialize({});
}, 200);
</script>
以下是您发布的工作演示中的相关行:
https://github.com/robinComa/html5-presentation/blob/master/app/scripts/modules/reveal.js#L26
setTimeout(function(){
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: true,
theme: Reveal.getQueryHash().theme, // available themes are in /css/theme
transition: Reveal.getQueryHash().transition || 'default', // default/cube/page/concave/zoom/linear/fade/none
// ... some stuff in here
});
}, 200);
或许最好先提前定义幻灯片的结构,而不是使用ng-repeat?也许布置没有ng-repeat的部分(因此显示可以在没有超时的情况下解释),然后使用ng-include将复制的布局放入每个部分块中。