Как использовать новый vue -app в качестве слота компонента - PullRequest
0 голосов
/ 11 июля 2020

Я хотел бы использовать совершенно новое приложение vue и передать его в компонент как слот. Итак, что-то вроде этого:

<div id="app_1">
    <lbmultiselect>
        <lboption>
            <div id="app_2" v-pre>
                <mycomponent-with-scope-of-app2></mycomponent-with-scope-of-app-2>
            </div>
            <script type="application/javascript">
                new Vue({
                    el: "#app_2"
                });
            </script>
        </lboption>
    </lbmultiselect>
</div>
<script type="application/javascript">
    new Vue({
        el: "#app_1"
    });
</script>

Я использую директиву <... v-pre ...>, чтобы игнорировать вложенное приложение от рендеринга родительским приложением. Кажется, это работает.

Тем не менее, <mycomponent-with-scope-of-app2> не рендерится каждый раз. Иногда по какой-либо причине не выполняется рендеринг, но в большинстве случаев все в порядке.

Вот пример: https://codesandbox.io/s/vigorous-mclaren-gy7sp?file= / index. html

Подсказка : вам нужно перезагрузить пример несколько раз, чтобы увидеть, что компонент lbdateview иногда не отображается.

...