vue是怎么做到前端分离的--脱离laravel为例

  首先表示折腾了十来天的php-laravel框架和vue的结合开发又偏前端实在是太大的阻碍,首先laravel的机制就是写完路由router再加载blade模板的.如果要在laravel工程里面加载一个.vue文件,必须通过一个 blade模板再导入vue.js.

  近期接触了前端较前卫的思想,那就是压缩打包代码+组件化开发.

这种思路就由不得传统的html的前端静态代码的,传统的静态项目的代码是这样的:

vue是怎么做到前端分离的--脱离laravel为例_第1张图片

而这样子很不利与组件化开发, 换言之就是改动了一处,需要凭记忆+个人能力+注释清楚来修改其他文件(如果改的不只是一处的话,那对于维护web的程序员来讲简直是噩梦)

于是前端有个很厉害的东西叫:脚手架,在vue里就是vue cli 

这玩意只要一句init的命令行就能生成一堆项目的文件,开发起来相当方便

vue是怎么做到前端分离的--脱离laravel为例_第2张图片

用的webpack,就输入

npm build dev   一句话就能:

压缩打包编译丢给服务器就能上线了你信不信

那为什么还要依赖这个laravel呢?

那真的是因为laravel这个特殊的机制了:必须编写路由+模板!  必须编写路由+模板!  必须编写路由+模板!   

那如果在laravel工程下开发前端,那真是的死了算了

每一次写完代码要用gulp watch 来动态编译然后打包(别以为我不知道,打包出来的最后的东东就是js的eval(代码处))

加上apache缓存/laravel缓存服务/浏览器缓存/

往往你get到的 只是你改代码的上一次的请求  我想说,这样的开发,我!不!要!



再说说解决开发时的老大难的问题:跨域;

在这方面前端是怎么做到完全脱离后台的呢,

解决方法是:用在本地开启服务器请求代理的方式来跟远端服务器通讯;

据说:服务器之间的通讯是不需要跨域的

神器来了:http-proxy-middleware! ==>一个node开发的代理发出http请求的中间件

神器自行百度!

----------------------------------------------------------------------------------------------------------------------------------------------------------


前端开发完全分离总结:

1:一个优秀的组件化开发框架(非必须),如vue 理由:自动生成工程目录+实时编译+打包压缩+es6语法检查+stylus解析+自动化单元测试工具kram(咋写忘了)+etc..

2:一个优秀的跨域解决方案,如vue cli-proxyTable(基于http-proxy-middleware)

3:一个走过弯路(碰过后端代码甚至想改后端代码)然后开发思路才变得很清晰的前端程序员!


你可能感兴趣的:(积累经验)