# 架構視圖 /src/
[TOC]
## api API相關
* **api.js**
函式 startGame,gameLink,gameLaunch,noticeList
* **apiEsport.js**
原先用於AAH的esports BF頁面,因此獨立出來的
* **apiService.js**
axios 的基礎設定
* **bfSports.js**
AAE的BF體育函式
* **promotion.js**
優惠活動相關函式
## assets 靜態資料(會被打包)
* **aaa,aad....**
各版面圖檔與CSS
* **共用圖檔與CSS**
---
## components 元件存放位置
其他版面共用的需放置在共用資料夾中;單一版面使用,則存放於該版面資料夾中
- **aaa,aad....**
各版面獨立元件
- **BFsports**
BF相關元件
- **PC**
桌機共用元件
- memberCentre 會員中心相關元件
- **phone**
手機共用元件
- memberCentre 會員中心相關元件
---
## constants
資料內容相關自定義使用的物件
- **index.js**
下面兩者的匯總文件
- **status.js**
資料相關定義的狀態物件資訊,如:
```jsx
const bonusStatus = {
0: "canNotReceive", //不可領取
1: "receive", //可領取
2: "received", //已領取
};
```
- types.js
資料相關定義的清單物件資訊,如: gameClassType 遊戲類別
---
## i18n 語系
各國語系存放位置
|檔名|語言
|-|-|
|en-US.json|英文
|hi_in.json|印度(印地)文
|id_id.json|印尼文
|ja_jp.json|日文
|pt.json|葡萄牙文
|vi-VN.json|越南文
|zh-CN.json|簡體中文
|zh-TW.json|繁體中文
---
## layout 外層
存放版面最外層檔案
- **aaa,aad…..** 獨立版面
- **BFsports** BF獨立頁
- **pages...**
獨立頁面共用外層
---
## pages 單一頁面
存放各單一頁面檔案
- **aaa,aad…** 獨立版面
- **BFsports** BF相關單一頁面
- **PC** 桌機共用單一頁面
- **phone** 手機共用單一頁面
- 放置於外層為獨立單一頁面
---
## router 路由器
路由器設定
- **aaa.js,aad.js…** 各版面路由器
- **BFsports.js** BF獨立頁面路由器
- **pages.js** 獨立單一頁面路由器
- **index.js** 路由器彙總
---
## store 狀態管理庫
資料的狀態管理庫
- **commonStore.js** (Pinia)
一般不常用的狀態資料
- **esports.js** (Pinia)
AAH版型的 BF相關
- **bfSport.js** (Pinia)
AAE版型的 BF相關
- **games.js** (Pinia)
唯一有啟用緩存功能
- **index,.js** (VUEX)
唯一使用 VUEX
---
## utils 常用函式
- **/cssimg** [使用說明](https://hackmd.io/@KFqiBO5dTA2-3EAj3rqZQg/HyLn_Zm3p)
存放CSS背景圖檔
- **other.js**
共用檔案用圖檔
- **aaa.js ,aad.js**
各版面圖檔
- **BFsports.js**
- **index.js**
背景圖彙總處
- **page.js**
獨立單一頁面圖檔
- **common.js**
存放大部分共用函式
- **directives.js**
監聽懶加載
- **helper.js**
// 僅簡短js涵式,不可引用外部套件 的函式,主要處理constants的資料