define vue application in blade component

梦想的初衷 提交于 2019-12-13 10:51:55

问题


I have navigation component reused in multiple blade pages with some modification. so I used:

<script>
    window.app = new Vue({
        el: '#navigation',
        ....
    });
</script>

in my navigation component.

when I included it in profile component that have:

<script>
    window.app = new Vue({
        el: '#app',
        ....
    });
</script>

one of them doesn't work. I know that these two definitions have anastomosis but I don't know how resolve it.

In simple what the matter with this:

<script>
    window.app = new Vue({
        el: '#app1',
        ....
    });
</script>

<script>
    window.app = new Vue({
        el: '#app2',
        ....
    });
</script>

回答1:


You can use one Vue app declaration by HTML container. You can't use one declared component inside other declared component.

So you can do this.

<!DOCTYPE HTML>
<html lang="en">
    <head>
      .....
    </head>
    <body>
        <!-- MAYBE YOU CAN DO A BLADE TEMPLATE -->
        <div id="navitagion"></div>  
        <div id="app"></div>  
        <!--=============== scripts  ===============-->
        <script type="text/javascript" src="{{asset('path/to/vue.js')}}"></script>
        const app = new Vue({
           el: '#app',
        });
        const navigation = new Vue({
           el: '#navigation',
        });
    </body>
</html>

You can add references in any container to use outside of Vue declaration like javascript or in other Vue component

But try and let me know how it works :)




回答2:


you can only have one vue.js library loaded in a single HTML tag

<!DOCTYPE HTML>
<html lang="en">
<head>
  .....
</head>
<body>
    <div id="app">            
    </div>  
    <!--=============== scripts  ===============-->
    <script type="text/javascript" src="{{asset('path/to/vue.js')}}"></script>
    const app = new Vue({
    el: '#app',
    });
</body>
</html>


来源:https://stackoverflow.com/questions/53887003/define-vue-application-in-blade-component

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!