javascript - Meteor 模块化和访问保护 - 一切都是 'global' 吗?

标签 javascript python oop meteor modularity

我正在探索 Meteor,并试图了解它与我更熟悉的其他 OOP 系统(例如 Python)相比如何在模块化方面工作。

在我看来,将事物分解为单独的文件(HTML 模板、相应的 JS 文件)是相当随意的,并且只符合程序员头脑中的组织。还有更多的事情吗?

据我了解,所有的 javascript、所有的 HTML、所有的 CSS、所有的模板都连接在一起。

通过 Python 模块和 OOP 类获得的那种保护是否有任何意义?我知道是否在 Meteor JS 文件中使用“var”声明变量决定了它是否具有全局访问权限 - 如果所有 Javascript 文件都连接在一起(如果它们实际上连接在一起)?

请原谅我这个 super 新手的问题,但如果您对如何只见树木、见森林有任何见解,我们将不胜感激。

最佳答案

确实这些文件被连接在一起成为一个大文件发送给客户端,但是每个文件中的代码被放入一个函数中直接调用:

您的 file1.js:

alert("This is file 1.")

你的file2.js:

alert("This is file 2.")

发送给客户端的内容:

(function(){
    alert("This is file 1.")
})()

(function(){
    alert("This is file 2.")
})()

因此文件中的局部变量不会相互影响,因为它们是函数的局部变量。

关于javascript - Meteor 模块化和访问保护 - 一切都是 'global' 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25945720/

相关文章:

可变作用域的 JavaScript 术语

JavaScript - 隐藏所有其他 div

php - (php) 如何在 array_filter 中传递类方法作为回调?

python - 尝试子类化 Mechanize 浏览器并创建登录方法

javascript - 从数组创建嵌套列表

javascript - 从 Object 获取 innerText

python - 向 DataFrame 添加多个列并将它们设置为等于现有列

python - 如何从matlab访问pythonnamedtuple

Python:如何区分长、短按钮按下和单击

java - 我的构造函数没有给出所需的输出