# 架構視圖 /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的資料