@prettyy/ui
Version:
vue2 UI
118 lines (103 loc) • 2.88 kB
JavaScript
import packageInfo from '../../package.json'
import Message from "./message/index.js"
import MessageBox from "./message-box/index.js"
import Input from "./input/index.js"
import Loading from "./loading/index.js"
import Dialog from "./dialog/index.js"
import Pagination from './pagination/index.js'
import View from "./view/index.js"
import Form from "./form/index.js"
import FormItem from './form-item/index.js'
import Tag from './tag/index.js'
import Watermark from './watermark/index.js'
import Drawer from "./drawer/index.js"
import PreviewImage from './preview-image/index.js'
import DatePicker from "./date-picker/index.js"
import Picker from "./picker/index.js"
import locale from "../locale"
// 指令
import loadingDirective from "./directive/loading.js"
import directive from './directive/index.js'
import util from '../utils/date-util/index.js'
import fixedDate from '../utils/date-util/fixedDate.js'
DatePicker.util = {
format: util.format.bind(util),
parse: util.parse.bind(util),
getWeekRange: util.getWeekRange.bind(util),
getMonthRange: util.getMonthRange.bind(util),
getQuarterRange: util.getQuarterRange.bind(util),
getWeekOfYear: util.getWeekOfYear.bind(util),
getWeekOfMonth: util.getWeekOfMonth.bind(util),
getDateRange: util.getDateRange.bind(util),
offsetDate: util.offsetDate.bind(util),
getDate: fixedDate.getDate.bind(fixedDate),
setDate: fixedDate.setDate.bind(fixedDate)
}
/**
* @deprecated 请使用 util 代替
*/
DatePicker.$util = DatePicker.util
DatePicker.Picker = Picker
const components = [Input, Dialog, Pagination, View, Form, FormItem, Tag, Watermark, Drawer, Picker, DatePicker ]
function install(Vue, opts = {}) {
locale.use(opts.locale)
locale.i18n(opts.i18n)
components.forEach(component => {
Vue.component(component.name, component)
})
// 注册指令
Vue.use(loadingDirective)
Vue.use(directive)
Vue.prototype.$VLEMENT = {
zIndex: opts.zIndex || 2000
}
Vue.prototype.$message = Message
Vue.prototype.$loading = Loading
Vue.prototype.$msgbox = MessageBox
Vue.prototype.$alert = MessageBox.alert
Vue.prototype.$confirm = MessageBox.confirm
Vue.prototype.$previewImage = PreviewImage
}
/* istanbul ignore if */
if (typeof window !== 'undefined' && window.Vue) {
install(window.Vue)
}
// 抛出组件
export default {
install,
locale: locale.use,
i18n: locale.i18n,
version: packageInfo.version,
MessageBox,
Message,
Input,
Loading,
Dialog,
Pagination,
View,
Form,
FormItem,
Tag,
Watermark,
Drawer,
PreviewImage,
Picker,
DatePicker
}
export {
MessageBox,
Message,
Input,
Loading,
Dialog,
Pagination,
View,
Form,
FormItem,
Tag,
Watermark,
Drawer,
PreviewImage,
Picker,
DatePicker,
}