2016-12-30 88 views
1

我正在開發基於express的Web應用程序,並且我開始關注由express-generator構建的應用程序框架。在哪裏放置前端JavaScript文件?

接下來,我添加到我的項目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目錄包含了所有你的服務器端特定的CoffeeScript文件

所以,我認爲也許/src不是放置前端javscript文件的更好選擇,根據接受的問題Node.js project naming conventions for files & folders的答案,我會按照提議的st ructure:

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

但它是確定有一個文件夾/app,並與同名的文件app.js?此外,/app與前端相關,而app.js與後端相關。

回答

1

我建議你從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,這是後端入口點。

0

我覺得public文件夾是相當common in web projects

因爲它是生成的bundle的目的地,我認爲你可以更明確地命名它webApp或任何你想要的。我認爲這是你的呼聲,這裏沒有硬性/最佳做法。用你和你的團隊所熟悉的東西去做吧。

+1

'/ public'是'bundle.js'的目的地,它集合了'webpack'打包的所有資產。 –

1

是不是真的用於網絡應用程序「需要」結構,阿卜杜拉說,它通常最好只與你和你的同事是舒服去。但是,因爲Node.js有一個內置的框架,所以你應該使用或許使用。對我來說最有意義的舉措是重命名app.js文件,並使用您所述的結構。