parent
0e01e1bfd3
commit
6d9a64b2b1
24 changed files with 420 additions and 113 deletions
@ -0,0 +1,25 @@ |
||||
<template> |
||||
<div> |
||||
<router-link :to="{name:'table1'}">Table Demo 1: 基本表格</router-link><br> |
||||
<router-link :to="{name:'table2'}">Table Demo 2: 斑马线表格</router-link><br> |
||||
<router-link :to="{name:'table3'}">Table Demo 3: 带边框的表格</router-link><br> |
||||
<router-link :to="{name:'table4'}">Table Demo 4: 自定义样式</router-link><br> |
||||
<router-link :to="{name:'table5'}">Table Demo 5: 滚动条</router-link><br> |
||||
<router-link :to="{name:'table6'}">Table Demo 6: 固定列</router-link><br> |
||||
<router-link :to="{name:'table7'}">Table Demo 7: 多级表头</router-link><br> |
||||
<router-link :to="{name:'table8'}">Table Demo 8: 合并行列</router-link><br> |
||||
<router-link :to="{name:'table9'}">Table Demo 9: 带状态的行</router-link><br> |
||||
<router-link :to="{name:'table10'}">Table Demo 10: 单行选择</router-link><br> |
||||
<router-link :to="{name:'table11'}">Table Demo 11: 多行选择</router-link><br> |
||||
<router-link :to="{name:'table12'}">Table Demo 12: 排序</router-link><br> |
||||
<router-link :to="{name:'table13'}">Table Demo 13: 筛选</router-link><br> |
||||
<router-link :to="{name:'table14'}">Table Demo 14: 展开行</router-link><br> |
||||
<router-link :to="{name:'table15'}">Table Demo 15: 树形数据</router-link><br> |
||||
<router-link :to="{name:'table16'}">Table Demo 16: 分页</router-link><br> |
||||
</div> |
||||
<div> |
||||
<router-view></router-view> |
||||
</div></template> |
||||
<script setup> |
||||
|
||||
</script> |
@ -0,0 +1,7 @@ |
||||
import {createApp} from "vue"; |
||||
import App from "./App.vue" |
||||
import router from './router' |
||||
import ElementPlus from "element-plus" |
||||
import "element-plus/dist/index.css" |
||||
|
||||
createApp(App).use(ElementPlus).use(router).mount('#app') |
@ -0,0 +1,122 @@ |
||||
// 引入必要的router组件
|
||||
import {createRouter, createWebHistory} from 'vue-router' |
||||
// 引入视图
|
||||
// const root = () => import('../App.vue')
|
||||
const tableDemo1 = () => import('../views/Table_Demo1.vue') |
||||
const tableDemo2 = () => import('../views/Table_Demo2.vue') |
||||
const tableDemo3 = () => import('../views/Table_Demo3.vue') |
||||
const tableDemo4 = () => import('../views/Table_Demo4.vue') |
||||
const tableDemo5 = () => import('../views/Table_Demo5.vue') |
||||
const tableDemo6 = () => import('../views/Table_Demo6.vue') |
||||
const tableDemo7 = () => import('../views/Table_Demo7.vue') |
||||
const tableDemo8 = () => import('../views/Table_Demo8.vue') |
||||
const tableDemo9 = () => import('../views/Table_Demo9.vue') |
||||
const tableDemo10 = () => import('../views/Table_Demo10.vue') |
||||
const tableDemo11 = () => import('../views/Table_Demo11.vue') |
||||
const tableDemo12 = () => import('../views/Table_Demo12.vue') |
||||
const tableDemo13 = () => import('../views/Table_Demo13.vue') |
||||
const tableDemo14 = () => import('../views/Table_Demo14.vue') |
||||
const tableDemo15 = () => import('../views/Table_Demo15.vue') |
||||
const tableDemo16 = () => import('../views/Table_Demo16.vue') |
||||
|
||||
// 引入组件
|
||||
|
||||
|
||||
// 创建路由
|
||||
const routes = [ |
||||
// {
|
||||
// path: "/",
|
||||
// name: 'root',
|
||||
// component: root
|
||||
// },
|
||||
{ |
||||
path: '/table1', |
||||
name: 'table1', |
||||
component: tableDemo1 |
||||
}, |
||||
{ |
||||
path: '/table2', |
||||
name: 'table2', |
||||
component: tableDemo2 |
||||
}, |
||||
{ |
||||
path: '/table3', |
||||
name: 'table3', |
||||
component: tableDemo3 |
||||
}, |
||||
{ |
||||
path: '/table4', |
||||
name: 'table4', |
||||
component: tableDemo4 |
||||
}, |
||||
{ |
||||
path: '/table5', |
||||
name: 'table5', |
||||
component: tableDemo5 |
||||
}, |
||||
{ |
||||
path: '/table6', |
||||
name: 'table6', |
||||
component: tableDemo6 |
||||
}, |
||||
{ |
||||
path: '/table7', |
||||
name: 'table7', |
||||
component: tableDemo7 |
||||
}, |
||||
{ |
||||
path: '/table8', |
||||
name: 'table8', |
||||
component: tableDemo8 |
||||
}, |
||||
{ |
||||
path: '/table9', |
||||
name: 'table9', |
||||
component: tableDemo9 |
||||
}, |
||||
{ |
||||
path: '/table10', |
||||
name: 'table10', |
||||
component: tableDemo10 |
||||
}, |
||||
{ |
||||
path: '/table11', |
||||
name: 'table11', |
||||
component: tableDemo11 |
||||
}, |
||||
{ |
||||
path: '/table12', |
||||
name: 'table12', |
||||
component: tableDemo12 |
||||
}, |
||||
{ |
||||
path: '/table13', |
||||
name: 'table13', |
||||
component: tableDemo13 |
||||
}, |
||||
{ |
||||
path: '/table14', |
||||
name: 'table14', |
||||
component: tableDemo14 |
||||
}, |
||||
{ |
||||
path: '/table15', |
||||
name: 'table15', |
||||
component: tableDemo15 |
||||
}, |
||||
{ |
||||
path: '/table16', |
||||
name: 'table16', |
||||
component: tableDemo16 |
||||
}, |
||||
] |
||||
|
||||
// 创建路由器,使用createRouter方法,传入history(路由类型)和 创建好的路由routes
|
||||
// 路由类型分为hash型和html5型,分别为createWebHashHistory和createWebHistory
|
||||
const router = createRouter({ |
||||
history: createWebHistory(), |
||||
routes |
||||
}) |
||||
|
||||
// 导出路由
|
||||
export default router |
@ -0,0 +1,102 @@ |
||||
<template> |
||||
<el-form :model="form" size="small" label-width="120" label-position="left"> |
||||
<el-form-item label="活动名称" style="width: 400px"> |
||||
<el-input v-model="form.name" maxlength="10" show-word-limit placeholder="请输入活动名称"></el-input> |
||||
</el-form-item> |
||||
<el-form-item label="活动地点"> |
||||
<el-select v-model="form.region" filterable placeholder="请选择活动区域"> |
||||
<el-option label="北京" value="beijing"></el-option> |
||||
<el-option label="上海" value="shanghai"></el-option> |
||||
</el-select> |
||||
</el-form-item> |
||||
<el-form-item label="活动时间"> |
||||
<el-row style="width: 400px"> |
||||
<el-col :span="11"> |
||||
<el-date-picker v-model="form.date1" type="date" placeholder="选择日期" style="width: 100%"></el-date-picker> |
||||
</el-col> |
||||
<el-col :span="2" class="text-center"> |
||||
<span class="text-gray-500">-</span> |
||||
</el-col> |
||||
<el-col :span="11"> |
||||
<el-time-picker v-model="form.date2" placeholder="选择时间"></el-time-picker> |
||||
</el-col> |
||||
</el-row> |
||||
</el-form-item> |
||||
<el-form-item label="是否直播"> |
||||
<el-switch v-model="form.delivery"></el-switch> |
||||
</el-form-item> |
||||
<el-form-item label="活动类型"> |
||||
<el-checkbox-group v-model="form.type"> |
||||
<el-checkbox label="线上活动" name="type"></el-checkbox> |
||||
<el-checkbox label="线下活动" name="type"></el-checkbox> |
||||
<el-checkbox label="促销活动" name="type"></el-checkbox> |
||||
<el-checkbox label="新品发布" name="type"></el-checkbox> |
||||
</el-checkbox-group> |
||||
</el-form-item> |
||||
<el-form-item label="场地资源"> |
||||
<el-radio-group v-model="form.resource"> |
||||
<el-radio label="自助"></el-radio> |
||||
<el-radio label="赞助"></el-radio> |
||||
</el-radio-group> |
||||
</el-form-item> |
||||
<el-form-item label="参与人数"> |
||||
<!-- <el-input-number v-model="form.number" min="0" max="10"></el-input-number>--> |
||||
<el-input v-model="form.number" type="number" min="0" max="10" placeholder="请输入参与人数" |
||||
style="width: 120px;"></el-input> |
||||
</el-form-item> |
||||
<el-form-item label="备注"> |
||||
<el-input v-model="form.desc" type="textarea" maxlength="400" show-word-limit style="width: 400px"></el-input> |
||||
</el-form-item> |
||||
<el-form-item> |
||||
<el-button type="primary" @click="submit">创建</el-button> |
||||
<el-button @click="cancel">取消</el-button> |
||||
</el-form-item> |
||||
</el-form> |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
name: "Form_Demo1", |
||||
data() { |
||||
return { |
||||
form: { |
||||
name: "", |
||||
region: "", |
||||
date1: "", |
||||
date2: "", |
||||
delivery: false, |
||||
type: [], |
||||
resource: "", |
||||
number: "", |
||||
desc: "", |
||||
} |
||||
} |
||||
}, |
||||
methods: { |
||||
submit() { |
||||
console.log('created') |
||||
console.log(this.form) |
||||
}, |
||||
cancel() { |
||||
console.log('cleared') |
||||
this.form = { |
||||
name: "", |
||||
region: "", |
||||
date1: "", |
||||
date2: "", |
||||
delivery: false, |
||||
type: [], |
||||
resource: "", |
||||
number: "", |
||||
desc: "", |
||||
} |
||||
} |
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style scoped> |
||||
.text-center { |
||||
text-align: center |
||||
} |
||||
</style> |
@ -0,0 +1,43 @@ |
||||
<template> |
||||
<el-form :model="form" size="small" label-width="120" label-position="left" inline> |
||||
<el-form-item label="活动名称" style="width: 400px"> |
||||
<el-input v-model="form.name" maxlength="10" show-word-limit placeholder="请输入活动名称"></el-input> |
||||
</el-form-item> |
||||
<el-form-item label="活动地点"> |
||||
<el-select v-model="form.region" filterable placeholder="请选择活动区域"> |
||||
<el-option label="北京" value="beijing"></el-option> |
||||
<el-option label="上海" value="shanghai"></el-option> |
||||
</el-select> |
||||
</el-form-item> |
||||
|
||||
<el-form-item> |
||||
<el-button type="primary" @click="submit">创建</el-button> |
||||
</el-form-item> |
||||
</el-form> |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
name: "Form_Demo1", |
||||
data() { |
||||
return { |
||||
form: { |
||||
name: "", |
||||
region: "", |
||||
} |
||||
} |
||||
}, |
||||
methods: { |
||||
submit() { |
||||
console.log('created') |
||||
console.log(this.form) |
||||
}, |
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style scoped> |
||||
.text-center { |
||||
text-align: center |
||||
} |
||||
</style> |
@ -0,0 +1,109 @@ |
||||
<template> |
||||
<el-form :model="form" size="small" label-width="120" label-position="left" :rules="rules" ref="form"> |
||||
<el-form-item label="活动名称" style="width: 400px"> |
||||
<el-input v-model="form.name" maxlength="10" show-word-limit placeholder="请输入活动名称"></el-input> |
||||
</el-form-item> |
||||
<el-form-item label="活动地点"> |
||||
<el-select v-model="form.region" filterable placeholder="请选择活动区域"> |
||||
<el-option label="北京" value="beijing"></el-option> |
||||
<el-option label="上海" value="shanghai"></el-option> |
||||
</el-select> |
||||
</el-form-item> |
||||
<el-form-item label="活动时间"> |
||||
<el-row style="width: 400px"> |
||||
<el-col :span="11"> |
||||
<el-date-picker v-model="form.date1" type="date" placeholder="选择日期" style="width: 100%"></el-date-picker> |
||||
</el-col> |
||||
<el-col :span="2" class="text-center"> |
||||
<span class="text-gray-500">-</span> |
||||
</el-col> |
||||
<el-col :span="11"> |
||||
<el-time-picker v-model="form.date2" placeholder="选择时间"></el-time-picker> |
||||
</el-col> |
||||
</el-row> |
||||
</el-form-item> |
||||
<el-form-item label="是否直播"> |
||||
<el-switch v-model="form.delivery"></el-switch> |
||||
</el-form-item> |
||||
<el-form-item label="活动类型"> |
||||
<el-checkbox-group v-model="form.type"> |
||||
<el-checkbox label="线上活动" name="type"></el-checkbox> |
||||
<el-checkbox label="线下活动" name="type"></el-checkbox> |
||||
<el-checkbox label="促销活动" name="type"></el-checkbox> |
||||
<el-checkbox label="新品发布" name="type"></el-checkbox> |
||||
</el-checkbox-group> |
||||
</el-form-item> |
||||
<el-form-item label="场地资源"> |
||||
<el-radio-group v-model="form.resource"> |
||||
<el-radio label="自助"></el-radio> |
||||
<el-radio label="赞助"></el-radio> |
||||
</el-radio-group> |
||||
</el-form-item> |
||||
<el-form-item label="参与人数"> |
||||
<!-- <el-input-number v-model="form.number" min="0" max="10"></el-input-number>--> |
||||
<el-input v-model="form.number" type="number" min="0" max="10" placeholder="请输入参与人数" |
||||
style="width: 120px;"></el-input> |
||||
</el-form-item> |
||||
<el-form-item label="备注"> |
||||
<el-input v-model="form.desc" type="textarea" maxlength="400" show-word-limit style="width: 400px"></el-input> |
||||
</el-form-item> |
||||
<el-form-item> |
||||
<el-button type="primary" @click="submit">创建</el-button> |
||||
<el-button @click="cancel">取消</el-button> |
||||
</el-form-item> |
||||
</el-form> |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
name: "Form_Demo1", |
||||
data() { |
||||
return { |
||||
form: { |
||||
name: "", |
||||
region: "", |
||||
date1: "", |
||||
date2: "", |
||||
delivery: false, |
||||
type: [], |
||||
resource: "", |
||||
number: "", |
||||
desc: "", |
||||
}, |
||||
rules: { |
||||
name: [ |
||||
{required: true, message: '请输入活动名称', trigger: 'blur'}, |
||||
{min: 3, max: 10, message: '长度在3到10个字符', trigger: 'blur'}, |
||||
{pattern: /^[a-zA-Z][a-zA-Z0-9_-]/, message: '活动名需要以字母开头,仅包含字母数字_-', trigger: 'blur'} |
||||
] |
||||
}, |
||||
} |
||||
}, |
||||
methods: { |
||||
submit() { |
||||
console.log('created') |
||||
console.log(this.form) |
||||
}, |
||||
cancel() { |
||||
console.log('cleared') |
||||
this.form = { |
||||
name: "", |
||||
region: "", |
||||
date1: "", |
||||
date2: "", |
||||
delivery: false, |
||||
type: [], |
||||
resource: "", |
||||
number: "", |
||||
desc: "", |
||||
} |
||||
}, |
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style scoped> |
||||
.text-center { |
||||
text-align: center |
||||
} |
||||
</style> |
Loading…
Reference in new issue