|
|
@@ -1,49 +1,42 @@
|
|
|
<template>
|
|
|
<div
|
|
|
- v-loading="loading"
|
|
|
class="l-flex--col c-schedule-wrapper"
|
|
|
@click.stop
|
|
|
>
|
|
|
- <warning
|
|
|
- v-if="error"
|
|
|
- @retry="retry"
|
|
|
- />
|
|
|
- <template v-if="!error && !loading">
|
|
|
- <div
|
|
|
- v-if="!hideHeader"
|
|
|
- class="l-flex__none l-flex--row c-schedule-wrapper__header has-bottom-padding"
|
|
|
- >
|
|
|
- <div class="l-flex__auto l-flex--row c-sibling-item c-schedule-wrapper__tip u-ellipsis">
|
|
|
- {{ name }}
|
|
|
- </div>
|
|
|
- <template v-if="editable">
|
|
|
- <button
|
|
|
- class="l-flex__none c-sibling-item o-button"
|
|
|
- @click="add"
|
|
|
- >
|
|
|
- <i class="o-button__icon el-icon-circle-plus-outline" />
|
|
|
- 新增
|
|
|
- </button>
|
|
|
- <button
|
|
|
- v-if="dirty"
|
|
|
- class="l-flex__none c-sibling-item o-button"
|
|
|
- @click="save"
|
|
|
- >
|
|
|
- <i class="o-button__icon el-icon-download" />
|
|
|
- 保存
|
|
|
- </button>
|
|
|
- <button
|
|
|
- v-else
|
|
|
- class="l-flex__none c-sibling-item o-button"
|
|
|
- @click="submit"
|
|
|
- >
|
|
|
- <i class="o-button__icon el-icon-upload2" />
|
|
|
- 提交
|
|
|
- </button>
|
|
|
- </template>
|
|
|
+ <div
|
|
|
+ v-if="!hideHeader"
|
|
|
+ class="l-flex__none l-flex--row c-schedule-wrapper__header has-bottom-padding"
|
|
|
+ >
|
|
|
+ <div class="l-flex__auto l-flex--row c-sibling-item c-schedule-wrapper__tip u-ellipsis">
|
|
|
+ {{ name }}
|
|
|
</div>
|
|
|
- <slot />
|
|
|
- </template>
|
|
|
+ <template v-if="editable">
|
|
|
+ <button
|
|
|
+ class="l-flex__none c-sibling-item o-button"
|
|
|
+ @click="onAdd"
|
|
|
+ >
|
|
|
+ <i class="o-button__icon el-icon-circle-plus-outline" />
|
|
|
+ 新增
|
|
|
+ </button>
|
|
|
+ <button
|
|
|
+ v-if="dirty"
|
|
|
+ class="l-flex__none c-sibling-item o-button"
|
|
|
+ @click="onSave"
|
|
|
+ >
|
|
|
+ <i class="o-button__icon el-icon-download" />
|
|
|
+ 保存
|
|
|
+ </button>
|
|
|
+ <button
|
|
|
+ v-else
|
|
|
+ class="l-flex__none c-sibling-item o-button"
|
|
|
+ @click="onSubmit"
|
|
|
+ >
|
|
|
+ <i class="o-button__icon el-icon-upload2" />
|
|
|
+ 提交
|
|
|
+ </button>
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
+ <slot />
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
@@ -59,14 +52,6 @@ export default {
|
|
|
type: [Boolean, String],
|
|
|
default: false
|
|
|
},
|
|
|
- loading: {
|
|
|
- type: [Boolean, String],
|
|
|
- default: false
|
|
|
- },
|
|
|
- error: {
|
|
|
- type: [Boolean, String],
|
|
|
- default: false
|
|
|
- },
|
|
|
name: {
|
|
|
type: String,
|
|
|
default: ''
|
|
|
@@ -77,16 +62,13 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
- retry () {
|
|
|
- this.$emit('retry')
|
|
|
- },
|
|
|
- add () {
|
|
|
+ onAdd () {
|
|
|
this.$emit('add')
|
|
|
},
|
|
|
- submit () {
|
|
|
+ onSubmit () {
|
|
|
this.$emit('submit')
|
|
|
},
|
|
|
- save () {
|
|
|
+ onSave () {
|
|
|
this.$emit('save')
|
|
|
}
|
|
|
}
|