在使用RequireJS时,我把脚本放在Yeoman项目的哪里?

Where do I put my scripts in a Yeoman project when using RequireJS?

本文关键字:项目 Yeoman RequireJS 脚本      更新时间:2023-09-26

我才刚刚开始讲《约曼》。我只是设置了一个基本的项目,我不确定在哪里把我的脚本。我应该把东西放到提供的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引入的新语法——但本质上每个文件都形成了一个闭包,并有自己的作用域。

想象如下:

如果您没有使用RequireJs来分隔您的文件,并且所有的代码都在一个文件中。它看起来像这样:

function app () {
    return 'Hello from Yeoman!';
}
console.log(app());

你可以在app.js里面写任何你想写的东西,只要它被所需的RequireJS语法包装:

define([], function() {
    //Start writing your code here
});

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

目前Yeoman的文档有点稀疏,所以如果你热衷于编写模块化JavaScript,我建议你去RequireJS网站阅读他们的文档。

当你初始化一个新的约曼项目时,如果你不想/不需要这个功能,你可以选择不包含RequireJS。

希望有帮助