注意开发HTML页面charset, 如是不是utf-8, 比如是shift_jis,  一般会在webpack里用插件EncodingPlugin把开发的utf-8格式转码成shift_jis格式 那么, 页面会报错如下: 中文: SCRIPT1046: strict 模式下不允许一个属性有多个定义 英文: SCRIPT1046: Multiple definitions of a property not allowed in strict mode 解决办法两种: 1. 安装MomentL…
1. { loader:"postcss-loader", options: { // 如果没有options这个选项将会报错 No PostCSS Config found plugins: (loader) => [ require('autoprefixer')(), //CSS浏览器兼容 ] } } 2.在项目根目录新建postcss.config.js文件,并对postcss进行配置: module.exports = { plugins: { 'autoprefixe…
前端这块,最火的是angular.react.vue.根据你具体的业务场景,选择合适的框架或者类库.以react为例,新建一个项目时, css组件按钮,图片轮播等组件,最好不要重复造轮子,选择业内规范的,拿来用就行.这里选了一个比较火的antd-mobile.类似移动端的 bootstrap,但是UI组件要比bootstr强大丰富,且专注于结合react使用. 具体使用,可以看官网教程:https://mobile.ant.design/docs/react/introduce.我直接拷贝过来:…
一.搜索到的相关概念: Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境. npm是 Node packaged Modules(node的包管理工具).本身用node.js编写,是管理基于node.js编写的命令行工具. webpack 是一个前端资源加载/打包工具 二.遇到的问题 ERR! Windows_NT 6.1.7601..... 起因:公司的前端资源目前是使用gulp打包的,我想去试一下用webpack打包是什么体验,会不会打包的时候更快一些.…
关于解决 [Webpack] Critical dependency: the request of a dependency is an expression ------------------------------------------------------------------------------------------------- 就遇到的情况和查阅相关资料来看,这个问题一般出现在 编译用于node环境时: module.exports = { target: 'node…
开发过程中我们不可避免的需要console.log调试,然而在上线时如果不删除这些console.log可能会造成内存泄漏,因为console.log出来的变量是不会被GC的,webpack给我们提供了一个非常棒的插件,看代码: new UglifyJsPlugin({ uglifyOptions: { compress: { warnings: false } }, sourceMap: config.build.productionSourceMap, parallel: true })…
问题一:引入前端库,方法也是不一样的 比如 lodash.js ,作为一个 chunk 用 html-webpack-plugin 打包到页面里,会生成一个全局变量 window._ ,在其它 js 中不必 require('lodash'); 就可以直接使用 window._ 比如 webpack-zepto,作为一个 chunk 用 html-webpack-plugin 打包到页面里,不会生成 window.$ ,如果在其它 js 中直接使用 window.$ ,就会报错.需要在其它 js…
最近在研究webpack这玩意,然后遇到一个问题,执行npm run build的时候,出现下面这个问题,各种搜索后,各种尝试,都没解决 运行时报错ERROR in ./src/app.vue Module build failed: SyntaxError: Unexpected token { ERROR in ./src/app.vue Module build failed: SyntaxError: Unexpected token { at exports.runInThisCont…
1.找到 webpack.prod.conf.js ,搜索 UglifyJsPlugin,添加配置 uglifyOptions: { compress: { warnings: false, drop_debugger: true,//关闭debug drop_console: true,//关闭console } },…
1.安装依赖包 $ npm install --save-div babel-preset-es2015 ps:babel-loader.babel-core应该是默认装好的,如果没有安装,请重新安装 2.修改[webpack.config.js]配置文件找到 /\.js$/的rules,进行修改 { test: /\.js$/, use: [{ loader: 'babel-loader', options: { presets: ['es2015'] } }], exclude: /node…
全局安装的webpack   安装指令如下 cnpm install wepack -save-dev -g 但是 在我的项目空间运行webpack指令的时候 会报如下错误 为了方便抓取{ Error: Cannot find module 'webpack' at Function.Module._resolveFilename (module.js:527:15) at Function.Module._load (module.js:476:23) at Module.require (m…
在项目中经常会需要将一些接口的配合文件或者某些样式文件,分离出来单独打包,便于后期改动,这里我以css文件为例,介绍实现两种方法: 项目目录: 如上图所示,现在我需要将项目中的scBtn.css文件单独打包出来.在不做任何配置,直接打包出来的css文件是压缩合并成了一个了,如下图,当我想要改某一个css文件时就不行了. 方法一: 1.在bulid文件夹下建一个copy.js(这个js名称可以自定义) 代码如下: var fs = require('fs'); var path = require…
一.错误:Uncaught ReferenceError: process is not defined 解决方法: new webpack.DefinePlugin({ 'process.env': { NODE_ENV: '"production"' } }) 在webpack.config.js文件中的plugins中加入上述代码 二.错误: fixes WARNING Critical dependency: the request of a dependency is an…
在build文件夹下找到webpack.prod.conf.js文件,搜索 filename: utils.assetsPath('css/[name].[contenthash].css'), 将[contenthash].去掉,重新打包,得到的dist文件夹下css名字为app.css   在build文件夹下找到webpack.base.conf.js文件搜索.[hash:7]搜到后删除  …
现在js发展太快了,根本看不懂啊.于是乎想做做功课,于是乎看到了这些“奇怪”的写法,原来好多都是遵循了 ECMASCRIPT6,好吧,在本地看看怎么用的吧.写在本地的环境下, 发现各种报错,根本不能用.还在纳闷呢,这个例子是怎么能写成这个样,还在那教人的呢?误人子弟?怎么跑呢?各种搜索才发现,原来我们一般常用的js是遵循的ES5规范,由于浏览器 支持等各种原因,我们需要将最新的ES6语法变成ES5才能以我们熟知的方式运行.于是乎,针对ES6的就出现了很多打包工具.webpack就是其中一款. 现…
可直接修改的方式 { plugins: [ function() { // 修改package.json中的版本号 this.plugin('done', function() { const pkgPath = path.join(__dirname, '/../package.json'); let pkg = fs.readFileSync(pkgPath); pkg = JSON.parse(pkg); pkg.version = '1.0.1'; fs.writeFileSync(pk…
场景描述,这是一个困扰我很久的一个问题,一直百度,都解决不了,今天自己通过设置终于解决了,慢慢的都是辛酸泪,赶快写个笔记记录一下. 对于idea 开发 vue-cli+webpack 项目,idea 就会特别卡: 原因一:node_modules   依赖包文件太多,导致idea 一直检索卡死: 这种可以通过设置忽略检索来解决(这种问题和SVN   updating 卡死的关系不大,有没有SVN都会卡,原因二才是我设置过之后不卡的) 原因二:SVN 版本控制一直检索node_modules 下的…
代码里如果用到const 关键字,编译报这种错误 解决方法: npm install terser-webpack-plugin --save 然后,webpack配置: const TerserPlugin = require('terser-webpack-plugin'); module.exports = { optimization: { minimize: true, minimizer: [new TerserPlugin()], }, };  …
在元素属性中不要写js关键字,会报使用关键字的错如@click='if(){}else{}', if-else 语句可以使用三元表达式或短路运算符来实现 v-for 不写:key  会有警告 ,使用:key 可以使得v-for优化,加快计算,所以最好写上:key 计算属性不可以对 data中数据进行运算,否则需要seter 和getter, 如 jobTypes: function () { return 'jobType' + this.jobType }, 会报错可以改为: jobTypes…
首先安装increase-memory-limit cnpm install -g increase-memory-limit 重启cmd,并在项目跟目录中运行一下 increase-memory-limit 然后打开项目的package.json,修改scripts的内容 在build运行的命令后面扩展下内存,比如设为8G(足够). node --max-old-space-size=8192 然后就可以打包成功了.…
optimization: { minimizer: [ new TerserJSPlugin({ terserOptions: { format: { comments: /(\s*#if)|(\s*#end)/i, }, }, }), ], }, // #ifdef H5 // #endif…
我只安装了webpack,没有安装webpack-cli,第一次输入webpack打包时,提示 One CLI for webpack must be installed. These are recommended choices, delivered as separate packages: - webpack-cli (https://github.com/webpack/webpack-cli) The original webpack full-featured CLI. We wi…
选用模板常用的是webpack与webpack-simple.webpack-simple是基于Webpack@2.1.0-beta.25进行配置的版本,而webpack模板则是基于Webpack ^1.3.2配置的. 其中,最大的区别是webpack-simple没有vue-router的中间件,不需要路由时推荐使用: 同时webpack-simple没有格式的检测.(个人认为不太重要), 使用webpack模板时格式检测也是可以不选的. 深入vue-cli的工程模板  https://www…
webpack是什么? https://webpack.js.org/concepts/ https://code.tutsplus.com/tutorials/introduction-to-webpack-part-1--cms-25791 webpack是一个为现代javascript application而生的module bundler:模块打包器. 某种意义上说,webpack也是可以代替gulp,grunt等传统意义上的task runner,而webpack中的loader就来…
几个月前,我的任务是将我们组的 Vue.js 项目构建配置升级到 Webpack 4.我们的主要目标之一是利用 tree-shaking 的优势,即 Webpack 去掉了实际上并没有使用的代码来减少包的大小.现在,tree-shaking 的好处将根据你的代码库而有所不同.由于我们的几个架构决策,我们从公司内部的其他库中提取了大量代码,而我们只使用了其中的一小部分. 我写这篇文章是因为恰当地优化 Webpack 并不简单.一开始我以为这是一种简单的魔法,但后来我花了一个月的时间在网上搜索我遇到…
从一个原生HTML/CSS/JS模式的网页改造到ReactJS模块化的结构,需要以下步骤: (1)引用ReactJS框架 ->(2)使用webpack 工具 -> (3)配置webpack使之识别各种语法:JAX,HTML,CSS等 以下是一些坑: 1.ReactJS框架并不能实现JS的模块化 纯ReactJS其实和JqueryTemplate差不多,可以把HTML写成一个模板,然后以插入到某个DIV里的方式来实现HTML的模板化. 但是单纯靠ReactJS这个框架,其实这并没有实现JS的模块…
文件的hash指纹通常作为前端静态资源实现增量更新的方案之一,Webpack是目前最流行的开源编译工具之一,其强大的功能也带来很多坑(当然,大部分麻烦其实都可以在官方文档中找到答案). 比如,在Webpack编译输出文件的配置过程中,如果需要为文件加入hash指纹,Webpack提供了两个配置项可供使用:hash和chunkhash.那么两者有何区别呢?其各自典型的应用场景又是什么?本文结合笔者工作中遇到的问题,简单记录一下以上问题的解决方案. 1. hash与chunkhash 首先我们先看一…
webpack:前端打包神器,目前活跃度甚至超过了gulp.grunt等,使用webpack打包,简单快速,下面记录下webpack环境搭建以及基本使用: 1.首先新建一个空白目录,用于项目根目录,比如我这里是simple_project 2.cmd窗口全局安装webpack: npm install webpack -g //cnpm install webpack -g 3.进入到项目内部执行npm init进行项目初始化,初始化后项目会多两个文件:node_modules.package.…
我的第一个用于实验webpack的项目是一个拥有多个版本的项目.什么叫多个版本?这个项目对3个语言版本+3个不同城市版本+(移动端  + PC端),也就是3*3*2,18个版本. 我的第一次想法肯定是构建语言包,这让我减少了不少工作.但是因为这个项目我的想法用来实验webpack的,问题就出现在3个城市要求的域名不一样.开始的时候我很爽快的享受着webpack给我带来便利,然而在一次发布测试时,却出现问题了. 第一坑:在于css的background-image这个属性,当webpack -p这…
webpack集成了模块加载和打包等功能 ,这两年在前端领域越来越受欢迎.平时一般是用requirejs.seajs作为模块加载用,用grunt/gulp作为前端构建.webpack作为模块化加载兼容了amd/cmd模式,并且作为模块化的资源可以是js/css/image  coffeescript/sass/less  ES2015 modles TypeScript 等功能非常强大,作为前端构建工具还可以和grunt/gulp配合一起使用. 配置文件webpack.config.js也是非常…