發表文章

目前顯示的是 4月, 2021的文章

vue 組件設計

前言 對於component到底需要設計到多小,沒有一定的標準,根據開發情境決定。 component設計: 可以分成設計面跟程式面,其實兩個是差不多的規則。 設計面可以參考原子設計裡面的5個部分: 原子,分子,組織,模板,頁面。 原子: UI的最小單位。一個button、一個input或少數div組成的文字框,可以在整個網頁不斷覆用。 分子: 少數原子組合起來,例如表單裡面的label + input。 組織: 由分子和原子組合起來,例如一個form或是一個card。 模板: 由以上分子和原子和組織組合起來,一個頁面的版型。 頁面: 這裡的頁面不同於模板,而是實際套用資料的結果頁面,例如: 一個產品模板會給很多的產品資料套用,不同的產品資料套用到同一個模板,就是不同的頁面。 程式面從一個組件該做什麼事,如何覆用和組件分類為主要參考。 vue組件分類: vue 組件分成幾類: page 組件 一般可覆用組件 最小單位組件 業務組件 page 組件放在 view資料夾內,每一個在router引用的view組件都是一個page,沒有覆用可能,用來協調業務組件,類似controller。 一般可覆用組件放在components資料夾內,由最小單元組件組成,通常只為了一個目標,為了增 加覆用性,提供可以配置的參數,在可覆用組件內沒有會造成副作用的功能,如call 第三方api,有的話也是通過把網址傳入達到不同的效果,跟function一樣只接收參數跟返回參數。 最小單位組件: 組件的設計就是要盡量小,然後自底而上建構複雜的組件,最小單位組件就是原子組件,通常提供默認樣式、功能和配置樣式、功能。 業務組件通常比較難覆用(除非剛好有一樣的操作邏輯),因為可能包含特定的業務邏輯和從第三方取得資料(call api)的操作,拉出組件的目的主要是為了減少和優化在page組件上的程式碼,不然都塞在page組件也是可以運作。 現有組件庫 element ui: 現在的組件庫都會強調不用寫css,他們也包含了最小單位組件跟可覆用組件。 這邊只討論組件,不討論layout或是一些內建的排版class。 最小單位組件 以input來看 <el-input v-model="input" placeholder="请输入内容"></el-

vue 父子通訊

通訊方式: 參數父傳子: 參數子傳父: 參數孫傳父: 參數父傳孫: 函數父call子: 函數父call子: 函數子call父: 函數孫call父: props / emits Event Bus $emit $on $off provide / inject $listener router parameter $attrs $refs cookie localstorage sessionstorage $parent

vue 錯誤處理

crud 前端後端 命名規範

前端規範 bread browse = 抓全部 read  = 抓取一個 edit = 編輯 add = 新增 delete  = 刪除 後端規範 laravel controller resource index  = 抓全部 show = 抓一筆 create  = get 取得填單頁面 (api 沒有) store  = post 送出填單資料 update  = 更新 destory = 刪除 repository 規範crud create = 新增 read = 抓取 find = 抓取一筆 update = 更新 delete = 刪除 API規範 GET = 抓取 POST =新增 PUT = 更新 DELETE = 刪除 User module 跟 self  抓取user相關的用user 抓取跟當下使用者相關的用self 包含新增跟更新的功能 upsert