请问 Laravel 和 Vue 如何能优雅的结合?
之前一直用iView配合Laravel,用了好几年了,一直是我们项目标配,但是也有一些问题。
首先需要比较专业好点的前端才能搞定(咱们8线城市,招好前端比较难)
如果系统做的很大,到时候前端的维护也是一个麻烦事情。各种组件套来套去,还有就是菜单、路由、权限这些东西比较头疼
今天尝试用了传统的xadmin去做新的项目,发现真的写不下去。。。
习惯了数据模型的处理方式,现在再用jQuery这种方式,竟然写不了前端代码了
如果混合这Vue来用,把Vue当成一个小框架来做也可以,写在页面里面。但是有几个问题,就是页面不能被webpack打包,导致了promise等一些新语法都不敢使用、每次加载JS重新渲染比较慢
目前正在开发一个进销存系统,项目可能比较大,所以不打算做成SPA、但是又得用Vue
大家可以讨论下,如何优雅的结合,既开发快,维护方面,写起来也不操蛋
Laravel 和 Vue 可以搜索社区帖子。
你说的这几个问题好像都不存在。
目前我们创业团队的解决方案(非SPA)是Vue组件分两种:Parents(不复用)和Components(复用的组件)。全局注册Parents然后在Blade模版中直接引用Parents。在Parents里引用Components。也想看看大家有没有其他更好的解决方案,欢迎交流。
不确定这个优雅结合是咋么理解,我觉得如果只是在所有blade代码里只留下了一行Vue组件的引用(可能是你们说的全局注册的Parents,或者整个功能块打包后的一个组件),完全不会用到其他blade的语法,那我觉得这种应该算不上是优雅结合吧,只能说是在用blade打包一遍Vue的页面而已。我理解的结合是在使用传统Blade魔板处理业务(前提这是一个非SPA项目)时,发现部分局部交互需要异步处理、或使用Vue的组件有额外优势时,考虑嵌入Vue的组件。我觉得所谓的优雅结合应该很好的把握了这个使用Vue组件的度,可能一个Blade文件有100行传统Blade语法,一行引用了一个Vue的小组件,这仍然可能是一个优雅的结合。
还有关于
能把blade模板放到webpack里打包吗?
这个问题,我觉得是不是用Vue的inline-template机制可以解决你的问题。组件可在外部定义,但内容仍可用Blade预调节。Vue 很优雅,Laravel 很优雅,结合在一起就不优雅了,为什么一定要结合在一起呢?
肯定有办法,而且也有人知道怎吗解决,甚至可能很容易被解决,可能是描述的还不够骚,吸引不来大佬的阅读时间。