---
# System prepended metadata

title: "\U0001F4CC[R]2020/04/15前端會議"
tags: [會議紀錄]

---

###### 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欄位有要調整 
![](https://i.imgur.com/L2EbrA3.png)


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