我处于流星的早期阶段,并试图学习如何整合模板。我有免费的bootstrap模板,它使用许多js和css文件。那么我如何在项目中添加/组织这些js和css文件。
我有js,css,img文件夹的公共文件夹。如果我在这里添加我的js和css文件,我如何链接我的模板和布局文件?
答案 0 :(得分:0)
看看https://github.com/oortcloud/unofficial-meteor-faq以及我应该把文件放在哪里?那部分。应该为您提供您需要知道的一切。
答案 1 :(得分:0)
<强>更新强>
我最近发现Meteor.startup不是一种非常可靠的方法。对我来说,它可能有50%的页面刷新。请在这里阅读我的主题:
Meteor JS javascript files in main.* still don't load correctly. Best practices for load order?
原帖
我今天也做了同样的事情。
In Meteor JS, how to control Javascript load order in relation to DOM load order? For animations
我创建了client / views / application / layout.html并将模板代码粘贴到其中。
然后我删除了模板的<head>
代码(因为Meteor为您添加了该代码),并将其余代码转换为<template>
。
我在public
我注释掉模板底部的脚本。通常这个东西会在加载DOM之后加载,但在Meteor的情况下它并不是由于Meteor加载东西的时髦方式:
(以下是我评论的内容)
<script src="assets/js/jquery.min.js"></script>
<script src="assets/js/bootstrap.min.js"></script>
<script src="assets/js/isotope.pkgd.min.js"></script>
<script src="assets/js/imagesloaded.min.js"></script>
<script src="assets/js/jquery.scrollTo.min.js"></script>
<script src="assets/js/jquery.nav.min.js"></script>
<script src="assets/js/jquery.appear.min.js"></script>
<script src="assets/js/twitterFetcher.min.js"></script>
<script src="assets/js/script.js"></script>
由于Meteor导致DOM加载后上面的代码没有加载,你必须以另一种方式指定加载顺序。
我在layout.html所在的文件夹中创建了layout.js并添加了这个:
Meteor.startup( function () {
$.getScript("assets/js/jquery.min.js");
$.getScript("assets/js/bootstrap.min.js");
$.getScript("assets/js/isotope.pkgd.min.js");
$.getScript("assets/js/imagesloaded.min.js");
$.getScript("assets/js/jquery.scrollTo.min.js");
$.getScript("assets/js/jquery.nav.min.js");
$.getScript("assets/js/jquery.appear.min.js");
$.getScript("assets/js/twitterFetcher.min.js");
$.getScript("assets/js/script.js");
});
现在模板有效了。在Meteor.startup
文件夹中调用client
时,它会在加载DOM后加载内容,这正是我们想要对这些javascript文件执行的操作。