karma 使用 webpack 的代码覆盖率测试
前言
- 距离上一次博客有 2 个月了,倒不是没有可写东西就是提不起劲写。
- 不说这些了这次写下我使用
karma + webpack中遇到的代码覆盖率问题。
karma + webpack 中遇到的代码覆盖率问题。vue-ssr改造为koa的web框架,我使用了一个第三方 npm 库。koa2-webpack-middleware-zmkoa-webpack-middleware-zm。github上并没有合适的包。
- koa 中间件的编写。
- 把
webpack-dev-middleware这种express中间件改造为一个koa中间件。
自从前端技术栈换到 mvvm 之类的以后网站的源码查看就只会有一些 js 了,对于用户是没什么问题但是却对 seo 有很大的问题。
因为百度之类的爬虫不会执行 js 来渲染所以无法得到内容。大部分主流的mvvm框架都有了 ssr(Server Side Rendering) 意为服务端渲染。
不是手游的 ssr,好像暴露了什么
公司项目都是后台管理项,肯定是导航加主显示区的方式切换,然后就想着用 vue_router 看看。 然后发现 vue_router 的 component 是同步加载的。。要是后台功能多 js 就很大了,这个就是所谓的单页应用。 但是单页应用不用 webpack 打包手动把 js 写一个也太蛋疼了。然后发现了 webpack 用 chunk 可以异步会把每个路由的 js 单独打包。 具体的原理下面也会讲解。
看到各种 vue 入门全部都是 webpack 的我表示没有什么问题。但是却发觉无法将这些 webpack 的工作流推荐给其它人。一说 npm,webpack,babel 什么的纷纷表示太麻烦。
也许他们还是更喜欢 cdn 引入,手写 js 吧。所以这个就是纯粹的 vue 不用 webpack 不用 babel。直接用我们喜欢的 es5 的 js 写。等到觉得 vue 的好再推荐他们 webpack 什么的。
然后模块化还是需要一个所有我选择了 requirejs。
这个些模块加载都是为了更好的管理 js 文件,以及引用其他文件更加方便,并且使每一个模块的全局域不再互相污染。模块化后可以使用npm进行管理以便分享。
原因是当我们的 Client 和 Service 不是同一个进程时是无法直接使用的,而在 android 中进程间通讯的方法有 Activity、Content Provider、Broadcast 和 Service。 其中 Activity 需要界面,隐式调用没有回调 Broadcast 的接收对象经常会重新被实例化,且以上两种都是通过 intent 传送。回调不能完成交互。 Content Provider 则只提供数据,Service 有 aidl 这门进程间调用函数的机制。