Skip to content

Wy-R/webpack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Webpack

资料

Babel

  1. 阮一峰 Babel 入门教程
  2. 有关babel插件的解释

webpack

  1. 官方教程
  2. 阮一峰demo
  3. webpack 资源合集
  4. webpack中文文档
  5. webpack+express 全栈刷新

ES6

  1. 阮一峰教程

webpack plugins

  1. CommonChunksLoader --- 用来提取公共模块的

用法:在plugins 里面加入:

new  webpack.optimize.CommonsChunkPlugin('common.js', ['main1', 'main2'])文件

其中 common.js 是抽取出来的公共的部分, main1 main2 是多入口文件的文件名

  1. open-browser-webpack-plugin 插件

这个插件可以在webpack 打包完毕后自动打开浏览器而不需要自己输入localhost:xxxx 等等,

配置情况是 下载该插件 然后在weboack.config.js 中引入该插件

var openBrowserWebpackPlugin = require('open-browser-webpack-plugin');

.....

plugins:[
		new openBrowserWebpackPlugin({ url: 'http://localhost:8080' })
	],

这样配置即可

Issue

  1. Unknown option: …/.babelrc.presets

  2. 上面的babel学习的资料也提到,.babelrc 文件必须放到根目录的下面,presets里面有什么,就要注意将该文件架子啊进来

  3. import 和 require

    1. 都是加载文件的,但是方式不同,引入一个 css 文件的话:这两者的方式分别是:
      • import: import ./style.css
      • require: require("./style.css")
    2. 当然加载其他的文件也是一样 3. import 是es6的语法需要babel支持
  4. 无法识别react 的语法

  5. 在 package.json 的"script"里面加入"dev": "./node_modules/.bin/webpack-dev-server --progress --colors --content-base build" 同时在webpack.config.js里面配置好devServer。便可以直接使用 npm run dev 来运行代码了

  6. 有关publicPath 的问题:

    • publicPath 是当浏览器引用时会制定输出文件的公共url地址,对于嵌入的scriptlink标签,如果path 和publicPath 不同的时候,publicPath 被作为文件的href或者url 当你想在不同域上处处文件或者在CDN上publicPath很有用,所以如果都不具备这些条件的话,可以直接一个path就够了 不写publicPath了。后面的遇到这个问题再继续搞吧~
    • 小伙伴给我找的两篇文章:
      1. webpack配置解释
      2. webpack配置解释
  7. 又出现一个问题:当我使用npm run dev 运行example-12的例子的时候显示的是content is served from /xxx/xxx/Desktop/webpack/webpack-example 然后显示的就是根目录 如下图所示:contentBase 如果我想进入example-12 的话还得点进去 然后才可以看到结果~

    • 问题: “ContentBase” 的设置问题
    • 解决方案:默认查找的是index.html 所以如果index.html在运行的文件夹下面的话那么就不用写contentBase如果是在里面的文件夹下面则:contentBase: "build"这种形式 PS: build 只是个例子。
  8. 有关自动刷新的问题,webpack-dev-server 有两种模式支持自动刷新:

    • 贴链接就OK了。自动刷新模式
    • PS: 模块的热替换和组件级热更新都是上面链接中提到的。
    • 一般上述条件做的话就是只刷新html 文件,但是在我们开发中需要刷新的一般不是index.html 也许是css 也许是jsx,所以要实现实时刷新的效果一般的方法是在React/下面的refresh-real-time文件下面写的哪两种方法。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages