javascript - 使用 RequireJS 时,我应该将我的脚本放在 Yeoman 项目的什么位置?

原文 标签 javascript requirejs yeoman

所以我才刚刚开始使用 Yeoman。我只是设置了一个基本项目,但我不确定将我的脚本放在哪里。我应该把东西放在提供的 app.js 中吗?或者我应该制作自己的文件并将它们添加到某处的某个构建脚本中还是在某处需要它们?任何建议表示赞赏。

我也不明白 app.js 文件中这个的目的:

define([], function() {
return 'Hello from Yeoman!';
});

最佳答案

好的,所以您选择在您的项目中使用 RequireJS。 RequireJS 允许您在 中分解代码模块 - 不仅可以提高代码的整洁度(减少意大利面条式代码),还可以消除全局命名空间的困惑。

如果您查看您的 main.js 文件,您会注意到以下内容:

require(['app'], function(app) {
  //use app here
  console.log(app);
});

它的作用是包含 app.js 进入您的主 javascript 文件并运行它。

现在,我认为您感到困惑的地方是 RequireJS 引入的新语法 - 但本质上是 每个文件形成 closure and has its own scope .

想象一下:

如果您没有使用 RequireJs 来分隔文件,并且所有代码都在 中一个文件 .它看起来像这样:
function app () {
    return 'Hello from Yeoman!';
}

console.log(app());

你可以在 里面写任何你想写的东西app.js 只要它用所需的 RequireJS 语法包装:
define([], function() {
    //Start writing your code here
});

这将包含在 中main.js 并编译成一个文件用于生产。

目前 Yeoman 的文档有点稀少,所以我建议您访问 RequireJS 网站和 read through their documentation。如果你热衷于编写模块化 JavaScript。

如果您不想要/不需要此功能,则在初始化新的 Yeoman 项目时始终可以选择不包含 RequireJS。

希望有帮助:)

关于javascript - 使用 RequireJS 时,我应该将我的脚本放在 Yeoman 项目的什么位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14211632/

相关文章:

javascript - 遍历表以返回_addItem()在Google Analytics(分析)电子商务中的交易信息

javascript - RequireJS - 将参数传递给模块进行初始化

javascript - 使用 grunt 连接所有 vendor javascript 文件?

javascript - Grunt usemin找不到目标

javascript - 如何清除文字区?

javascript - 不在每个元素上运行一次函数

javascript - ReactJS - this.state 中的数组在删除时正确更新,但直到后来的状态更改才呈现结果?

requirejs - 无需 requireJS 创建 ace-editor 的自定义模式

javascript - Require.js 独立于其他网站

node.js - 使用 Yeoman 设置 AngularJS 项目后出现 "npm install"问题