UNPKG

vue-poster-editor

Version:

A poster editor based on Vue.js

60 lines (51 loc) 1.62 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _editorFileReader = require('./editor-file-reader.html'); var _editorFileReader2 = _interopRequireDefault(_editorFileReader); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = { template: _editorFileReader2.default, props: ['change', 'afterSelect', 'model', 'type', 'accept', 'title'], data: function data() { return { readMethodsMap: { 'text': 'readAsText', 'url': 'readAsDataURL', 'buffer': 'readAsArrayBuffer', 'binary': 'readAsBinaryString' } }; }, computed: { filePicker: function filePicker() { return this.$refs.filePicker; } }, methods: { set: function set(ret) { if (this.change) { this.change(ret); } else { this.model = ret; } }, onChange: function onChange(file) { var self = this; var reader = new FileReader(); var readMethod = this.readMethodsMap[this.type] || this.readMethodsMap.url; reader.onload = function () { self.set(reader.result); }; reader[readMethod](file); }, showPicker: function showPicker() { this.filePicker.showPicker(); } }, beforeDestroy: function beforeDestroy() { this.$emit('destroy'); } }; module.exports = exports['default'];