【发布时间】:2012-07-15 08:01:51
【问题描述】:
我想将Dojo Toolkit 与Meteor 一起使用。
我首先将整个 Dojo Toolkit 树复制到
/public-
然后,我将它包含在客户端:
<script src="/dojo/dojo.js" data-dojo-config="async: true"></script>`
一切正常,除了 Meteor 实际上正在监视 /public 中的每个文件的更改,以便它可以重新启动服务器。这实际上在localhost:3000 上的第一个请求期间导致了很长的延迟。
有没有办法阻止 Meteor 从某个目录观看文件?
Dojo Toolkit 有 10k+ 个文件,所以我收到了here 中的 EMFILE 错误,更正了
sudo sh -c 'echo 16384 > /proc/sys/fs/inotify/max_user_watches'
【问题讨论】:
-
我终于找到了解决方法。我把所有东西都放在 /public/lib/.然后,/usr/lib/meteor/app/run.js 的第 286 行,我添加了我不希望 Meteor 观看的文件夹:
self.exclude_paths = [ path.join(app_dir, '.meteor', 'local'), path.join(app_dir, 'public', 'lib') ];这样我可以在 lib 中拥有尽可能多的文件,他们不会减慢一切。包含路径是'/lib/dojo/dojo.js'。 -
很好的修复,你应该给他们发一个补丁并在下面发布这个作为答案
-
@Mathieu 建议的解决方法应该可以正常工作,但 Meteor 应该原生支持类似的东西。这也作为 GitHub 问题提交,这是继续讨论此问题或跟踪其解决方案的适当位置。 github.com/meteor/meteor/issues/437
-
@BjoernRennhak 您知道您链接的问题中的答案实际上是该主题的引文吗?