先後端如何維護一份公共常量

背景:
目前大部分Web項目採用了先後端分離的方式進行開發:webpack

  • uiweb

    • src (code)
    • public (image, font)
    • package.json
  • serverjson

    • config (settings)
    • src (code)
    • package.json

問題:
開發的時候能夠在ui和server分別用 'yarn start'啓動項目並單獨運行。可是這樣的模式卻讓ui和server沒法共享代碼。好比一些常量,咱們並不但願他們有多份。後端

解決方案:
這個時候咱們能夠採用軟連接的方式來維護一份代碼。前後端分離

首先,咱們在ui, server同級的目錄建立新的文件夾 'constants':ui

  • constantsspa

    • index.js
    • color.js
    • location.js

而後分別在ui, server下的src目錄下使用命令:code

ln -s ../../constants ./constants

若是使用vscode能夠看到該文件後面有symbol link的標誌:server

clipboard.png

最後咱們,在代碼中能夠直接引用'src/constants'位置下的常量了。ip

常見的坑:

  1. 使用webpack的小夥伴可能須要添加 resolve.symlinks = false;
  2. 使用babal的小夥伴可能須要在 constants文件夾中加入.babalrc文件;或者採用module.exports等通用的方式聲明導出的變量。
相關文章
相關標籤/搜索