【问题标题】:Sharing global variables between javascript files loaded to Meteor在加载到 Meteor 的 javascript 文件之间共享全局变量
【发布时间】:2015-09-21 14:04:37
【问题描述】:

我有一个 javascript 文件,我将它放在 Meteor 应用程序的 client/lib 文件夹中。随着文件越来越大,我决定将其拆分为 3 个文件,并在全局命名空间中定义一个对象“App”,以便 3 个文件共享数据。

每个文件都以

开头
var app = app || {};

(function () {
    'use strict';

    app.object1 = {

这样,file2和file3仍然可以使用app.object1,以此类推。

问题是当 Meteor 加载文件时,它似乎自动用 function(){} 包装它,这使得 app.object1 无法从随后加载的文件中访问。

(function(){
    var app = app || {};

   (function () {
   'use strict';

    app.object1 = {

避免此问题的最佳方法是什么?谢谢。

编辑:我提到了这篇文章 [Link:][1]Global variables in Meteor,它建议在没有“var”的情况下定义变量。我将 file1 中的代码替换为 app = {},但我的应用现在在以下代码行中的 file2 中崩溃,下面粘贴了来自 Meteor 控制台的消息。

app.ALL_LIST = 'all'

=> 您的应用程序正在崩溃。等待文件更改。 ReferenceError: 应用未定义

【问题讨论】:

  • 感谢您提供有用的链接。按照该链接中的说明创建了一个导出全局变量的包。现在可以了。

标签: javascript meteor


【解决方案1】:

在你的变量声明中省略var ;) 那么它将是全局范围的。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2019-08-17
  • 1970-01-01
  • 1970-01-01
  • 2015-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多