-node_modules 依賴安裝資料夾(要進行git忽略)
-dist build後的資料夾(要進行git忽略)
-public 主要放置入口index.html檔案和專案logo
-src
--api **請求api封裝(封裝請求-常用)
--assets 靜態資源
--components **自定義元件封裝(封裝所需要的元件-常用)
--router **路由(路由跳轉-常用)
--store vuex配置
--utils 通用工具封裝
--views **頁面開發(主要的頁面開發-常用)
-main.js vue全域性配置
-settings.js 專案配置
-.env.development 開發環境配置
-.env.production 生產環境配置
-package.json 依賴配置
-vue.config.js vue專案環境配置檔案
頁面流程
import
from
'vuex'
import
crud
,from
'@crud/crud'
// 預設表單,設定資料格式 最好與介面返回的格式一致,直接暴露,不要封裝
const defaultform =
export
default
,// 自定義的 property
cruds()
})},
// 混入
mixins:
[presenter()
,header()
,form
(defaultform)
,crud()
],data()
elseif(
!isvalidphone
(value)
)else
}return
,// 驗證規則
rules:,]
},computed:
,created()
, mounted:
function()
},methods:
,// 新增與編輯前做的操作
[crud
.hook
.aftertocu]
(crud, form)
,// 開啟編輯彈窗前做的操作
[crud
.hook
.beforetoedit]
(crud, form)
,}
15行,自定義option
// 自定義的 property
cruds()
})},
mixins: [presenter(), header(), form(defaultform), crud()]
混入模式下
presenter()
function
presenter
(crud)')
}return},
beforecreate()
//此處將例項裡cruds中返回的crud函式初始化
let cruds =
this
.$options.cruds instanceof
function
?this
.$options.
cruds()
: crud
if(!
(cruds instanceof
array))
cruds.
foreach
(ele =>
this
.$crud[ele.tag]
= ele
ele.
registervm
('presenter'
,this,0
)})this
.crud =
this
.$crud[
'de****t'
]|| cruds[0]
},methods:
,created()
}},destroyed()
},mounted()
}}}
header(),pagination(),form(),crud
關於頁面中[crud.hook.aftertocu](crud, form)
之類的鉤子如何執行
之前一直不太清楚是如何觸發的,今天又翻了翻crud.js
本以為不在callvmhook
中觸發的,沒想到還是在這裡
js基礎還是要經常學習鞏固
//[crud.hook.beforetoedit]如何觸發
[crud
.hook
.aftertocu]
(crud, form)
----
----
----
-// hook vm
function
callvmhook
(crud, hook)
const taghook = crud.tag ? hook +
'$'+ crud.tag :
null
let ret =
true
const nargs =
[crud]
for(
let i =
2; i < arguments.length;
++i)
// 有些元件扮演了多個角色,呼叫鉤子時,需要去重
const vmset =
newset()
crud.vms.
foreach
(vm => vm && vmset.
add(vm.vm)
) vmset.
foreach
(vm =>
if(taghook && vm[taghook])}
)return ret}--
----
----
-------
//將vm[hook]也就是例項中的[crud.hook.beforetoedit]之類的方法在vm和nargs(也就是[crud])中重用
集合框架學習總結
集合實際用來儲存物件 object 但需要注意的是,集合存放的實質上是物件的位址。接下來我們先來看一下集合框架圖,如下 同一顏色方框,我將它們視為同一級 首先由上圖確認一下它們的關係 collection 介面 set 介面 儲存元素特點 元素無序,元素不可以重複,與list集合體系本質區別就是無索...
java spring框架學習總結
使用方法見我的csdn部落格 重點基礎 反射 spring ioc 控制反轉,即不直接在物件內部new類,而是有專門乙個容器來建立這些物件,我們可直接呼叫 動態 spring aop 面向切面程式設計,1 jdk 僅面向介面 的動態 2 基於cglib的動態 可面向類 屬性編輯器,即property...
Java Executor 框架學習總結
大多數併發都是通過任務執行的方式來實現的。一般有兩種方式執行任務 序列和並行。class singlethreadwebserver class threadpertaskwebserver new thread task start 當然上面的這兩種方式都是有問題的。單執行緒的問題就是併發量會是瓶...