【JavaScript】egg.js的命名問題

關於egg.js中的命名問題

在Java中,不管是Service、Controller、Model,一個單獨的文件都作爲類存在,其命名也遵循類的首字母大寫的規範。這在任何時候都不會出錯。
最近學習egg.js,對於其命名卻不甚明瞭。其中原因不瞭解,暫時記錄一下,有大牛可以幫我解惑。

controllerservice

  • 文件名:首字母大小寫隨意
  • 調用:此時一定是首字母小寫
  • 模塊名:隨意

示例:

// controller/user.js/User.js // 文件名首字母大小寫隨意,不影響程序正確性
class resu extends Controller {}; // 這個類名隨便寫,不影響程序正確性
module.exports = resu;

// router.js中調用時
router.get('/user', controller.log.index); // 這裏一定是小寫,即便文件名是User.js

model

  • 文件名:首字母大小寫隨意
  • 調用:此時一定是首字母大寫
  • 模塊名:隨意

示例:

// model/user.js/User.js // 文件名首字母大小寫隨意,不影響程序正確性
const resu = app.model.define('user', ...); // 這個變量名隨便寫,不影響程序正確性

// service中調用時
this.ctx.model.User.findAll(); // 這裏一定是大寫

約定

  • 文件名統一用小寫
  • servicecontroller 調用時都是首字母小寫
  • model 調用時注意首字母大寫
  • 變量名和類名採用首字母大寫,後綴類型
    • service -> UserService
    • controller -> UserController
    • model -> UserModel
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章