我想渲染一个包含vue js组件的部分html,当我点击这个div时,将它放在带有ajax的div中, 这样做的目的是使用laravel创建一个messenger应用程序(参见下面的图像示例)
messenger app with laravel / vue js
这个部分HTML的问题在于,我必须把我的app.js 在每个部分中将它呈现在最终的html页面中,否则它不会编译,所以在最后我有尽可能多的app.js作为部分我有...很多冗余
我的组件示例:
发送msg btn组件:
<meta name="friendId" content="{{ $friend->id }}">
<chat-composer v-bind:userid="{{ Auth::user()->id }}" v-bind:chats="chats" v-
bind:friendid="{{ $friend->id }}"></chat-composer>
<script src="{{ asset('js/app.js')}}"></script>
聊天对话组件:
<audio id="ChatAudio" xmlns:v-bind="http://www.w3.org/1999/xhtml">
<source src="{{ asset('sounds/chat.mp3') }}">
</audio>
<meta name="friendId" content="{{ $friend->id }}">
<chat v-bind:chats="chats" v-bind:user="{{ Auth::user() }}" v-
bind:friendname="{{$friend}}" v-bind:userid="{{ Auth::user()->id }}" v-
bind:friendid="{{ $friend->id }}"></chat>
呈现它的ajax代码示例:
$.ajax({
url: '{{ url('messenger') }}' + '/'+ id,
type: 'GET',
//data: {id:id},
success: function(data) {
$('#showmessenger').html(data);
}
最后,在最后的html页面doest中添加app.js,我必须把它放在每个部分中..
你是否有任何解决方案,部分渲染而不是每次都添加app.js?