Загрузить изображение на сервер с помощью плагина (Css / VueJs) - PullRequest
0 голосов
/ 02 сентября 2018

Я работаю с Filepond , которые помогают мне загрузить изображение. Я выполняю одинаковые шаги по обеим ссылкам здесь , и это мой код:

<template>
  <div id="app">

    <file-pond
        name="filepond"
        ref="pond"
        class="filepond"
        label-idle="Drop files here..."
        allow-multiple="true"
        accepted-file-types="image/jpeg, image/png"
        v-bind:files="myFiles"
        v-on:init="handleFilePondInit"/>

  </div>
</template>

<script>
// Import FilePond
import vueFilePond from 'vue-filepond';

// Import plugins
import FilePondPluginFileValidateType from 'filepond-plugin-file-validate-type/dist/filepond-plugin-file-validate-type.esm.js';
import FilePondPluginImagePreview from 'filepond-plugin-image-preview/dist/filepond-plugin-image-preview.esm.js';

// Import styles
import 'filepond/dist/filepond.min.css';
import 'filepond-plugin-image-preview/dist/filepond-plugin-image-preview.min.css';

// Create FilePond component
const FilePond = vueFilePond( FilePondPluginFileValidateType, FilePondPluginImagePreview );

export default {
    name: 'app',
    data: function() {
        return { myFiles: ['index.html'] };
    },
    methods: {
        handleFilePondInit: function() {
            console.log('FilePond has initialized');

            // example of instance method call on pond reference
            this.$refs.pond.getFiles();
        }
    },
    components: {
        FilePond
    }
};
</script>

<style scoped>

/**
 * FilePond Custom Styles
 */
.filepond--drop-label {
    color: #4c4e53;
}

.filepond--label-action {
    text-decoration-color: #babdc0;
}

.filepond--panel-root {
    background-color: #edf0f4;
}

.filepond--item-panel {
    background-color: #595e68;
}

.filepond--drip-blob {
    background-color: #7f8a9a;
}

.filepond {
    width: 170px;
    height: 170px;
    padding: 0;
    overflow: hidden;
}

.filepond--root,
.filepond--image-preview-wrapper {
    border-radius: 9999px;
}

.filepond--list {
    left: 0;
    right: 0;
}

.filepond--drop-label {
    bottom: 0;
    margin: 0;
    display: flex;
    align-items: center;
}

.filepond--file-info {
    display: none;
}

.filepond--file-action-button {
    display: none;
}

.filepond--image-preview-overlay {
    display: none;
}

.filepond--item-panel {
    display: none;
}

.filepond--file .filepond--action-remove-item {
    display: block;
    bottom: 1em;
    left: calc(50% - 0.8125em);
}

.filepond--file .filepond--progress-indicator {
    top: auto;
    right: calc(50% - 0.625em);
    bottom: 1.1875em;
}

html {
    padding: 30vh 0 0;
}

body {
    max-width: 170px;
    margin: 0 auto;
}

</style>

Затем я пытаюсь сделать это, как в этом примере, чтобы загрузить изображение в форме круга, как здесь .

И вот что я получил:

Upload Image

Как я могу изменить его снова? Я скопировал тот же код CSS из примера и использовал его в своем коде, но он не работает, как вы видите.

1 Ответ

0 голосов
/ 23 декабря 2018

Я не знаю vue, но 'accept-file-types' принимает массив строк, а не одну строку, содержащую несколько типов файлов. Вы не можете попробовать изменить его на массив.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...