###### tags: `會議紀錄`
###### Thunder:
###### CodeReview: `A1 #CND` `A1 #路由(CrmPageGuard|AuthGuard)` `行動版` `CSS #a1Grid`
###### Announcement: `近期方向`
###### Attendee: 政儀、永佳、偉恩、弘翊、政儒
# 📌[R]2020/04/15前端會議
## 踩雷事件
### ⚡無踩雷事件
## 寫法交流
### ⛏CND
css 不可以一天發好幾次 20200415A1WEB
今天測試區的錯誤原因
runtime
polygills
style
script
-- 下面兩個可以看成一個
vandor
main
### ⛏路由(CrmPageGuard|AuthGuard)
延遲載入
就是在像是我們/main/basic[...]的時候他會才會匯入basic的元件
:::info
📝延遲載入
起由: 程式越來越大包時,載入時間也越來越長。
目的: 減少傳輸資料、提升載入速度。
方法: 拆分元件,再各別載入。
說明: 當在A頁面時,載入A頁面需要的程式,在B頁面時,在載入B頁面需要的程式。
注意: 拆分元件時,要避免不同模組間的服務、元件互相引用,否則就失去延遲載入的意義。
:::
聯絡人Contacts、客戶資料Customer
basic-routing.module.ts
```typescript
{ path: 'customer', component: CustomerComponent, canActivate: [AuthGuard], data: { jobID: JOBID.CUSTOMER } },
{ path: 'customer/:id', component: CustomerDetailComponent, canActivate: [AuthGuard], data: { jobID: JOBID.CUSTOMER }, canDeactivate: [DataChangesAskService] },
{ path: 'contacts', component: ContactsComponent, canActivate: [CrmPageGuard], data: { jobIDs: [JOBID.CUSTOMER] , checkUser: true , checkUserByCrm: true} },
{ path: 'contacts/:id', component: ContactsDetailComponent, canActivate: [CrmPageGuard], data: { jobIDs: [JOBID.CUSTOMER] , checkUser: true , checkUserByCrm: true} },
```
crm-routing.module.ts
```typescript
{ path: 'contacts', component: ContactsComponent, canActivate: [CrmPageGuard], data: { jobIDs: [JOBID.CUSTOMER], checkUser: true, checkUserByCrm: true } },
{ path: 'contacts/:id', component: ContactsDetailComponent, canActivate: [CrmPageGuard], data: { jobIDs: [JOBID.CUSTOMER], checkUser: true, checkUserByCrm: true } },
{ path: 'customers', component: CustomerComponent, canActivate: [CrmPageGuard], data: { jobIDs: [JOBID.CUSTOMER], checkUser: true } },
{ path: 'customers/id', component: CustomerDetailComponent, canActivate: [CrmPageGuard], data: { jobIDs: [JOBID.CUSTOMER], checkUser: true } },
```
目前在進銷存、業務客情,都可以使用聯絡人跟客戶資料,
crm-routing.module.ts
basic-routing.module.ts
現在{ path: 'contacts', component: ContactsComponent, canActivate: [CrmPageGuard], data: { jobIDs: [JOBID.CUSTOMER], checkUser: true, checkUserByCrm: true } },
的ContactsComponent是crm.module.ts掛上basic.module.ts
那現在在crm的聯絡人就沒有延遲載入的功能
他可以/crm/contacts進入
也可以/crm/basic/contacts
而且可以在/crm/basic/載入basic的模組
ex: /crm/basic/item
這樣就算是個bug
這問題主要是當初設計架構的問題
現在要調整的話要要改AuthGuard
或者是把contacts跟constomers這個再分出一個module
像手機板就是一個元件一個module
### ⛏行動版
最好可以自動化 發布上架
list要用無線滾輪
### ⛏CSS
現在的a1grid欄位有要調整

## 事情公告
### 📢近期方向
* 未來可能會有==連鎖店==的功能
* angular v9研究
* 下個專案==松果==
* 行動版版發布4個分支