前端javascript文件放在哪里?

Where to place the front-end javascript files?

我正在开发 express based web application and I started following the application skeleton built by express-generator

接下来,我将 webpack 添加到我的项目中以捆绑客户端资产。

现在我不确定将前端 javascript 文件放在哪里,如果在 /src/app 文件夹中?

事实上,我在 app.js/lib/src/app 文件夹之间进退两难。

  1. 根据 express-generator,它创建了一个 app.js 文件作为主条目,因此拥有一个具有相同内容的 app 文件夹看起来有点奇怪入口点的名称 app.js.

  2. webpack usage manual 建议使用 /src 文件夹放置 javascript 文件。但我认为 /src 不应该专门用于前端 javascript,另一方面,我不想在同一个文件夹中混合服务器和前端 javascript 文件。

  3. 此外,问题 Folder structure for a Node.js project 的已接受答案与前一点相矛盾,因为它指出:

/src contains all your server-side specific CoffeeScript files

所以,我认为 /src 可能不是放置前端 javscript 文件的更好选择,根据问题 Node.js project naming conventions for files & folders 的已接受答案,我会遵循建议的结构:

  /app - front-end javascript files
  /bin - helper scripts
  /lib - back-end express files

但是文件夹 /app 和文件 app.js 同名可以吗?此外,/app与前端相关,app.js与后端相关。

我认为 public 文件夹相当 common in web projects

因为它是生成的 bundle 的目的地,我想你可以更明确地命名它 webApp 或任何你想要的。我认为这是你的决定,这里没有 rigid/best 练习。选择您和您的团队都喜欢的东西。

我建议您将主文件从 app.js 重命名为 index.js 并保留 Node.js project naming conventions for files & folders:

中建议的结构
  /app - front-end javascript files
  /bin - helper scripts
  /lib - back-end express files

因此,与前端相关的/app文件夹与后端入口点index.js之间不再存在误导。

Web 应用程序实际上并没有 "required" 结构,正如 Abdellah 所说,通常最好只使用您和您的同事喜欢的结构。然而,因为 Node.js 有一个内置框架,你应该 可能 使用它。对我来说最有意义的举动是重命名 app.js 文件,并使用您声明的结构。