【问题标题】:Meteor "use strict" with global alias流星“使用严格”与全局别名
【发布时间】:2016-02-28 11:21:12
【问题描述】:

在另一个 SO 帖子 here 中,第二个选项是在第一个“顶部”文件中写入 G.this; 以创建命名空间。
然后在每个其他 js 文件的顶部写上“use strict”。

这就是这样一个文件的全部内容吗?如果是这样,“顶部”文件应该位于哪里(服务器,客户端,两者)以及什么名称?因为 Meteor 根据文件的路径加载文件。谢谢

【问题讨论】:

  • 不确定您在寻找什么,但是可以,您可以将"use strict" 添加到任何文件的顶部您希望启用严格模式
  • “top”文件应该放在什么位置?它需要在任何其他文件之前加载吗?它应该在一个文件夹中并以特定名称命名,以便 Meteor 首先打开它吗?即“顶部”?
  • 是的,应该首先加载声明G = this; 的文件,最好在服务器和客户端上加载。您可以将它放在流星应用程序根目录下名为 app.js 的文件中,以便首先在客户端和服务器上加载它。
  • 我在看文档,找不到 app.js 优先加载。你有链接吗?谢谢
  • 我之前的评论不正确。我添加了一个正确答案的答案,请检查。

标签: meteor


【解决方案1】:

在 Meteor 中创建全局命名空间的一种方法(如 SO answer 中所建议的那样)是创建一个文件,其中声明了 this 的全局别名,例如:

G = this;

理想情况下,该文件应该首先加载同时在客户端和服务器上

要做到这一点,根据doc

  1. lib/ 目录中的文件首先加载(在客户端加载模板文件之后)。
  2. Meteor 将加载客户端和服务器上client/server/ 目录之外的任何文件。
  3. 在没有其他规则适用的情况下,路径的字母顺序用于确定文件的加载顺序。

因此,按照这些规则,我会将文件保存为app.js(或任何按字母顺序排在第一位的类似名称)。然后我会将这个文件放在lib/ 文件夹的根目录下,这样它就可以同时加载到客户端和服务器上。

所以,app.js 的路径将是:./your_meteor_project_root/lib/app.js

【讨论】:

    猜你喜欢
    • 2014-02-27
    • 2016-05-19
    • 1970-01-01
    • 1970-01-01
    • 2012-09-28
    • 2021-07-04
    • 2013-10-01
    • 1970-01-01
    • 2014-02-08
    相关资源
    最近更新 更多