AFAIK,在Meteor中,在编译应用程序时,所有javascript文件和所有css文件将合并到一个文件中。我认为这种行为会降低app的速度(因为用户必须下载该页面不必要的所有css和javascript)。此外,这种行为使我们的应用程序不动态,因为可能是一些页面,我们需要不同的CSS或JavaScript文件。
所以我的问题是:我们如何为模板选择自定义javascript和自定义css? Meteor支持这个吗?
谢谢:)
答案 0 :(得分:1)
AFAIK Meteor并不是以这种方式完全支持这一点。所以你留下了两个解决方法。
一个人会写一个自己的扩展,在这方面帮助你或找到一个已经存在的扩展。
另一个是将你的特殊资源放在{{{ 1}}从合并过程中排除的文件夹(请参阅http://docs.meteor.com/#/full/structuringyourapp)。现在,您可以编写一些模板特定的逻辑,以便在访问模板时从那里加载和评估JS和CSS资源。 /yourMeteorApp/public
中的资源可直接在根级别上使用 - 因此public
下可以使用public/js/my.js
。
<强>更新强>
这个答案已经很老了,在现代Meteor应用程序中,您应该使用导入逻辑(和www.example.com/js/my.js
文件夹),当我最初回答这个问题时,它不会以这种方式存在:https://guide.meteor.com/structure.html#intro-to-import-export >
到目前为止,这应该是处理任何动态JS需求并构建应用程序的最佳方式。
答案 1 :(得分:1)
在实践中,这对我来说还不成问题。组合的javascript文件被缩小和混淆。 UI中的任何“页面加载”在没有服务器GET的情况下完成的事实使得UI非常活泼。我有超过20个软件包,当应用程序冷启动时,加起来可以加载2.1MB的js。即使在iOS上也感觉很快。