分布式调度框架。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

221 lines
5.2 KiB

<template>
<div>
<section class="demo-section">
<h4>modal</h4>
<div>
<x-button type="primary" @click="handleModal">Modal Dialog</x-button>
<x-button type="primary" @click="handleAbstract">Abstract Modal Dialog</x-button>
</div>
</section>
<section class="demo-section">
<h4>message</h4>
<div>
<x-button type="primary" @click="info">消息</x-button>
<x-button type="success" @click="success">成功</x-button>
<x-button type="warning" @click="warning">警告</x-button>
<x-button type="error" @click="error">错误</x-button>
<x-button type="primary" @click="loading">Get...</x-button>
<x-button @click="loading">Loading</x-button>
</div>
</section>
<section class="demo-section">
<h4>notice</h4>
<div>
<x-button type="primary" @click="infoNotice">消息</x-button>
<x-button type="success" @click="successNotice">成功</x-button>
<x-button type="warning" @click="warningNotice">警告</x-button>
<x-button type="error" @click="errorNotice">错误</x-button>
<x-button type="primary" @click="loadingNotice">Get...</x-button>
</div>
</section>
</div>
</template>
<script>
import Vue from 'vue'
import { xButton } from '../../vue-button/src'
import { xModal, xMessage, xNotice } from '../src'
Vue.$message = Vue.prototype.$message = xMessage
Vue.$modal = Vue.prototype.$modal = xModal
Vue.$notice = Vue.prototype.$notice = xNotice
const ModalTest = {
data () {
return {
name: 1
}
},
methods: {
handleAbstract () {
this.$modal.dialog({
title: '你好',
width: 200,
escClose: true,
closable: false,
showMask: true,
className: 'x-modal-custom',
maskClosable: true,
render (h) {
return (
<div class='customize-dialog'>This is a abstract modal dialog.</div>
)
}
})
},
handleModal () {
let self = this
this.$modal.dialog({
className: 'x-modal-custom',
width: 350,
closable: true,
showMask: true,
maskClosable: true,
title: '你好',
content: 'hello word' + (this.name++),
ok: {
show: true,
className: 'x-btn-ok',
handle (e) {
self.$notice.success({
title: 'Success',
content: 'ok',
duration: 2,
onClose () {},
closable: false
})
console.log('ok event handled.', e)
}
},
cancel: {
handle (e) {
self.$notice.info({
title: 'Canceled',
content: 'cancel',
duration: 2,
onClose () {},
closable: false
})
console.log('cancel event handled.', e)
}
}
})
}
}
}
export default {
mixins: [ ModalTest ],
components: { xButton },
data () {
return {
name: 1
}
},
methods: {
info () {
this.$message.info({
content: 'hello word' + (this.name++),
duration: 2,
onClose: function () {
},
closable: false
})
},
infoNotice () {
this.$notice.info({
title: '标题',
content: 'hello word' + (this.name++),
duration: 0,
onClose: function () {
},
closable: true
})
},
success () {
this.$message.success({
content: 'hello word' + (this.name++),
duration: 2,
onClose: function () {
},
closable: false
})
},
successNotice () {
this.$notice.success({
title: '成功',
content: 'hello word' + (this.name++),
duration: 2,
onClose: function () {
},
closable: false
})
},
error () {
this.$message.error({
content: 'hello wordhello wordhello word' + (this.name++),
duration: 0,
onClose: function () {
},
closable: true
})
},
errorNotice () {
this.$notice.error({
title: '错误',
content: 'hello wordhello wordhello word' + (this.name++),
duration: 0,
onClose: function () {
},
closable: true
})
},
loading () {
this.$message.loading({
content: 'hello word' + (this.name++),
duration: 2,
onClose: function () {
},
closable: true
})
},
loadingNotice () {
this.$notice.loading({
title: '加载中',
content: 'hello word' + (this.name++),
duration: 2,
onClose: function () {
},
closable: true
})
},
warning () {
this.$message.warning({
content: 'hello word' + (this.name++),
duration: 2,
onClose: function () {
},
closable: false
})
},
warningNotice () {
this.$notice.warning({
title: '警告',
content: 'hello word' + (this.name++),
duration: 2,
onClose: function () {
},
closable: false
})
}
}
}
</script>
<style lang="scss">
.customize-dialog {
padding: 10px;
background: #ccc;
border-radius: 4px;
}
</style>