Как я могу загрузить компонент OpenSeadragon в мой компонент Vue - PullRequest
0 голосов
/ 24 апреля 2018

Мне нужно использовать внешнюю библиотеку JavaScript в моем компоненте Vue с именем "OpenSeadragon".

Но как я могу загрузить этот компонент в свой компонент Vue?В моем родительском шаблоне я загружаю библиотеку с:

<script src="{{ asset('js/openseadragon.min.js') }}"></script>

Это мой Vue TestComponent :

<template>
    <div>
        <div id="openseadragon" style="width: 100%; height: 600px; border: 1px solid red"></div>
    </div>
</template>

<script>

    export default {
        data(){
            return {

            }
        },
        created() {

           // How can I load openseadragon??
            OpenSeadragon({
                id:              "openseadragon",
                prefixUrl:       "/openseadragon/images/",
                tileSources:     "/example-images/duomo/duomo.dzi"
            });


        },
        methods: {
            //
        }
    }
</script>

Затем я получаю эту ошибку:

[Vue warn]: ошибка в созданном хуке: «Ошибка типа: невозможно прочитать свойство 'appendChild' со значением NULL"

1 Ответ

0 голосов
/ 24 апреля 2018

Согласно Vue Lifecycle , вы должны поместить вызов функции в mounted.

Поскольку элемент #openseadragon не существует до вызова mounted.

...