1.昨天看到自己的项目每次打包后都是30M左右,就觉得这个打包后的dist文件太大了,能不能小点呢, 然后就看网上的资料,提供了好多优化的办法,但是我只用了一个,后期再不断的优化吧. 打开工程项目文件夹.找到config文件夹 ----> 打开index.js文件, 1 module.exports ={ 2 dev:{ 3 4 ..... 5 } , 6 7 build:{ 8 productionSourceMap : false, 9 ..... 10 } 11 12 13 } 就修改这么…
从开通博客到现在也没写什么东西,最近几天一直在研究vue+webpack+element-ui项目打包速度优化,想把这几天的成果记录下来,可能对前端牛人来说我这技术比较菜,但还是希望给有需要的朋友提供一下方便. 一开始项目部署到线上后第一次访问首页的时间是7.8秒的样子,页面加载太慢了自己都接受不了何况用户. 主要是从一下几步来优化的: 1.vue路由的加载方式 import Home from '@/components/Index' 改为 const Index = resolve => r…
这段时间公司新项目立项,开发组选用 Vue2.0 进行开发.当然也就一并用到 vue cli 进行自动化构建.结果在基础版本开发完成后,用 npm run build 命令打包上线时,发现以下几个问题.虽然这些问题对项目正常运行影响不大,但是却对性能影响比较大. 1.加载图片过多,过大时,加载缓慢: 2.部署包过大,上传缓慢: 本来想偷个懒,优化的事放到以后再说,但是每次上传服务器,包太大自己都感觉不爽.所以索性先优化了再说! 1.加载图片过多,过大时,加载缓慢: 原因: 解决方案: 2.部署包…
本文重点介绍Vue单页面应用的优化手段: 异步加载 面切换时加loading特效 点击延迟 inline manifest 逻辑代码优化 依赖包体积优化 cdn引用 Vue代码优化 异步加载 所谓的异步加载组件,其实就是组件懒加载.可以理解为:当我需要使用组件的时候才进行加载.主要包含两部分:路由配置和子组件的调用.所以在router文件夹下 index.js 做如下配置 组件优化 由于是后台项目,所以选择element-ui框架进行后台系统搭建,所以对这个进行优化也可以减小体积,提高速度和减少…
减小文件搜索范围 配置 resolve.modules Webpack的resolve.modules配置模块库(即 node_modules)所在的位置,在 js 里出现 import 'vue' 这样不是相对.也不是绝对路径的写法时,会去 node_modules 目录下找.但是默认的配置,会采用向上递归搜索的方式去寻找,但通常项目目录里只有一个node_modules,且是在项目根目录,为了减少搜索范围,可以直接写明 node_modules 的全路径:同样,对于别名(`alias)的配置…
相信有很多同学在学习vue的刚开始都遇到过项目打包发布后发现CSS中的背景图片不显示,具体如何解决只需要更改bind的配置即可 修改 build/utils.js 中的 generateLoaders 方法,如下代码,增加 publicPath: '…/…/' // generate loader string to be used with extract text plugin function generateLoaders (loader, loaderOptions) { const…
来源:https://www.chainnews.com/articles/504060702149.htm 机器之心专栏 作者:张俊林 Batch Normalization (简称 BN)自从提出之后,因为效果特别好,很快被作为深度学习的标准工具应用在了各种场合.BN 大法虽然好,但是也存在一些局限和问题,诸如当 BatchSize 太小时效果不佳.对 RNN 等动态网络无法有效应用 BN 等.针对 BN 的问题,最近两年又陆续有基于 BN 思想的很多改进 Normalization 模型被…
背景   目前团队中新的 Web 项目基本都采用了 Vue 或 React ,加上 RN,这些都属于比较重量级的框架,然而对于小型 Web 页面,又显得过大.早期的一些项目则使用了较原始的 HTML 页面构建技术,但业务逻辑基本无法复用.  近半年做过几个小型 Web 页面,在不断学习前端知识的同时,也在重构并摸索小型 Web 项目可能的更好解决方案.本文则对之前的工作进行一次整体描述.   目标和定位   单论小型 Web 页面,其相对于 Vue/React 等项目最大不同是不需要支持 SPA…
1.修改source-map配置:此配置能大大减少打包后文件体积. a.首先修改 /config/index.js 文件: // /config/index.js dev环境:devtool: 'eval'(最快速度) prod环境:productionSourceMap: false(关闭source-map) b.然后修改 /src/main.js 文件,关闭生产环境的调试信息 // /src/main.js const isDebug_mode = process.env.NODE_ENV…
一.分析各模块打包后大小 用vue-cli创建的项目,已经集成 webpack-bundle-analyzer.详见文件 build/webpack.prod.conf.js,代码如下: if (config.build.bundleAnalyzerReport) { const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin webpackConfig.plugins.push(new…
背景 按照 Ant Design 官网用 React 脚手构建的后台项目,刚接手项目的时候大概30条路由左右,我的用的机子是 Mac 8G 内存,打包完成需要耗时2分钟左右,决定优化一下. 项目技术栈: React + React Router + TypeScript + Ant Design 构建时间慢可能的原因: React 脚手架默认打包构建出来的文件包含 map 文件 Ant Desigin 以及项目中使用的第三方模块太大 babel-loader 编译过程慢 React 脚手架修改…
转发自segmentfault  https://segmentfault.com/a/1190000017346799 前端 1.数据驱动的高交互可视化图形语法 AntV - G2 G2 是一套基于可视化编码的图形语法,以数据驱动,具有高度的易用性和扩展性,用户无需关注各种繁琐的实现细节,一条语句即可构建出各种各样的可交互的统计图表. 同时,G2 也是 AntV 最重要的组成,始于<The Grammar of Graphics>一书描述的视觉编码语法系统(这也是 G2 项目命名的由来).…
首先回顾一下token:token认证是RESTFUL.api的一个很重要的部分,通过token认证和token设置,后端会有一个接口传给前台: http://localhost/yiiserver/web/index.php/token?client_appid=aaa&client_appkey=bbb 其实就是向用户表里去生成一个token 这里的client_id相当于用户名,client_key相当于密码,这样后台会生成一个client_token,我们需要把这个token保存到客户端…
在web项目里面,有时代码里面需要引用一些自定义的配置文件,这些配置文件如果放在类路径下,项目经过打包后使用的相对路径也会发生变化,所以以下给出了三种解决方案. 一.properties下配置 在类路径下定义config.properties,内容为: name=zhangsan 在xml配置server.properties <util:properties id="config" location="classpath:conf/config.properties&…
前言 排名不分先后,按自己习惯来的. 一.provide.inject 高级组件 总述: provide在父组件中定义,inject 在子孙组件中定义. provide:选项应该是一个对象或返回一个对象的函数.该对象包含可注入其子孙的属性. inject :通常是一个字符串数组. 作用: provide.inject实现父子(孙)传值. 示例: 父组件: <template> <div> <Child></Child> </div> </t…
先吐槽一下,花了我3个小时,心累 本地运行正常,发布时maven插件里要加utf-8编码 https://blog.csdn.net/testcs_dn/article/details/45583791 <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <ver…
OOCSS 参考:http://coding.smashingmagazine.com/2011/12/12/an-introduction-to-object-oriented-css-oocss    作者:Louis Lazaris oocss是Nicole Sullivan在Web Directions North中第一次提出,它代表了一种快.可维护.基于标准的CSS写法. 全称object-oriented-css,面向对象的CSS.既然是面向对象,那什么是OOCSS中的对象呢?OOC…
6.全局变量 sass暂时没有局部变量 局部定义变量会覆盖全局变量 新出!global 不过要sass 3.4版本以后        (这句呢,,我觉得是错的 开始写的时候没测试 现在发现我觉得他是有局部作用域的 具体明天问作者~ 我已经加群提问题了) 例: $font-size:12px; 设置全局 body { $font-size:14px: //覆盖掉了全局 font-size:$font-size //14 } p { font-size:$font-size; //14 这个我觉得是…
工具  : koala 学习网址 : http://www.w3cplus.com/sassguide/syntax.html  http://sass-lang.com/documentation/Sass/Script/Functions.html#unquote-instance_method 1.sass使用//双斜杠注释向JS一样是单行注释 单行注释不会输出到css中 /**/注释概念相反 2.sacc变量名必须以$开头 后面紧跟着变量名 变量名与值依然是用:分开 $fontSize…
在做VUE +的WebPack脚手架项目打包完成后,在IIS服务器上运行发现项目中的背景图片加载不出来检查项目代码发现是因为CSS文件中,背景图片引用的路径问题;后来通过修改配置文件,问题终于解决了,解决方法如下: 注意:如果整体为空白,记得先改===>>> 1.记得改一下config下面的index.js中bulid模块导出的路径.因为index.html里边的内容都是通过script标签引入的,而你的路径不对,打开肯定是空白的.先看一下默认的路径. module.exports =…
之前我们推送了一篇小型Web项目打包优化文章,(链接),我们使用了一段时间, 在这过程中我们也一直在思考, 怎么能把结构做的更好.于是我们改造了一版, 把可以改进的地方和可能会出现的问题, 在这一版中进行了优化.小伙伴们, 有没有迫不及待? 那好, 我们废话少说, 进入正题^_^ 一.背景 之前, 转转App端内有些Hybrid页面和一些端外的落地页, 一般是单个的一两个小页面, 不是所谓的大型的前端应用, 比较零散, 交互也比较简单.如果用vue或react, 有点杀鸡焉用宰牛刀的意思, 没有…
来源:http://help.adobe.com/zh_CN/flashbuilder/using/WSe4e4b720da9dedb5-1a92eab212e75b9d8b2-7ffe.html   为应用程序配置库 创建 Flex 库项目 创建 AIR 库项目 将组件添加到库项目中 选择要包括在 SWC 文件中的库项目元素 构建库项目 在项目中使用 SWC 文件 将 SWC 文件添加到库路径 编译时将 SWC 文件合并到应用程序 SWF 文件中 将 SWC 文件设置为外部库文件 将 SWC…
前言:最近有小伙伴问我,是不是用vue脚手架生成的项目就不能jquery了呢?显然,答案是否定的,必须能用.但是个人建议最好不要用了,用人家vue提供的不好嘛. 一.用vue-cli生成项目 1. vue init webpack-simple vue-jq 2. cd vue-jq 3. cnpm install 4. 使用git bash(只是为了方便) 5. package.json 中修改端口 --port 8088 6. npm run dev 二.构建项目结构,引入相关文件 目录结构…
vue项目打包之后的dist文件目录是如下 如果想要修改dist或则static文件名称,需要打开config / index.js build: { // Template for index.html index: path.resolve(__dirname, '../dist/index.html'), // Paths assetsRoot: path.resolve(__dirname, '../dist'), assetsSubDirectory: 'static', // 对应的…
最近在使用webpack + vue做个人娱乐项目时,发现npm run build后,css js img静态资源文件均找不到路径,报404错误...网上查找了一堆解决办法,总结如下 一.首先修改config目录下的index.js文件 将其中build的配置项assetsPublicPath进行修改,改为 目的是将资源文件的引入路径,改为相对地址(相对index.html) 二.此时html中的js.css.img引入均没有问题,但是css中的background-image还是报404 此…
vue完成项目后,如何打包成静态文件,并且用Node调试 打包 1.修改config里面的index.js里面的productionSourceMap为false,默认情况是true(true代表打包环境是开发环境,可以进行调试:false表示生产环境,正式上线的) 2.在cmd里面运行npm run build,(运行的是build里面的build.js文件) 生成的包放在dist下面 使用node进行调试 1.在根目录下创建prod.server.js文件,这个文件的作用是作为一个小的htt…
一.前言 在上一章中,我们开始通过 Vue CLI 去搭建属于自己的前端 Vue 项目模板,就像我们 .NET 程序员在使用 asp.net core 时一样,我们更多的会在框架基础上按照自己的开发习惯进行调整.因此在后面几章的学习中,我将会在整个项目基础上,按照自己的需求进行修改设定. PS:因为毕竟自己还是传统意义上的后端开发,所以这里最终搭建完成的前端项目模板,其实是按照 PanJiaChen 开源的 vue-admin-template 模板进行修改仿写,所以你可以把这个系列后续的文章当…
点击上方"前端自习课"关注,学习起来~ 前言 Vue 框架通过数据双向绑定和虚拟 DOM 技术,帮我们处理了前端开发中最脏最累的 DOM 操作部分, 我们不再需要去考虑如何操作 DOM 以及如何最高效地操作 DOM:但 Vue 项目中仍然存在项目首屏优化.Webpack 编译配置优化等问题,所以我们仍然需要去关注 Vue 项目性能方面的优化,使项目具有更高效的性能.更好的用户体验.本文是作者通过实际项目的优化实践进行总结而来,希望读者读完本文,有一定的启发思考,从而对自己的项目进行优化…
vue/cli2.0 脚手架 在项目写完了之后, 运行npm run build --report可以看出这个项目的资源占比情况.可以看出整个项目哪一个资源在整个项目占比最大.它会自动打开一个可视化的页面,看看你的哪一个资源占比最大 其中monent.js这个库占比还是比较大的.使用(date-fns)一个较小的项目库来代替它. https://blog.csdn.net/qq_36742720/article/details/83719615date-fns较moment相比,更为轻量化,在实…
入职一周后,上一个前端就离职了(超级坑爹的),留下了一个比较棘手的问题,就是基于vue-cli的项目打包超级慢,我接手项目的时候,打包需要45min(上个离职者也不知道原因),经过3个月之后,随着项目的不断迭代,打包的时间飙升到了2个半小时.为了解决这个问题,以前没有做过这方面的优化,在结合网上的一些优化博客,就开启了以下的优化之路. 一.怀疑vue-cli打包配置文件被修改过(不行) 基于此点的怀疑,使用vue-cli重新搭建环境. 步骤一:vue init webpack 项目名称. 步骤二…