1.插件下载

首先,下载react-eveloper-tools开发调试工具插件。

官网下载路径:https://github.com/facebook/react-devtools

谷歌下载.crx后缀的文件,火狐下载.xpi后缀的文件。

因为谷歌插件下载需要翻墙,这里提供一个本地资源:http://download.csdn.net/detail/mafan121/9838773


2.插件安装(以谷歌为例)

打开谷歌浏览器,在路劲栏输入:chrome://extensions/

将下载的插件拖入谷歌浏览器,然后选中允许访问文件网址。


React Developer Tools会自动检测React组件,不过在webpack-dev-server模式下,webpack会自动将React组件放入到iframe下,导致React组件检测失败,变通方法是webpack-dev-server配置在--inline模式下即可。


3.webpack.config.js配置

由于目前所有浏览器都不支持ES6,但是谷歌引入了source-map文件来识别ES6源码。所以需要添加devtool:'source-map'配置。

let webpack = require('webpack');

module.exports = {
    entry: __dirname+'/src/entry.js',
    output: {
        path: __dirname+'/build',
        filename: 'bundle.js'
    },
    devtool: 'source-map',
    resolve: {//指定可以被import的文件名后缀
        extensions: ['.js', '.jsx','.sass','.ts']
    },
    module: {
        loaders: [
            {
                test: /\.js?$/,
                exclude: /(node_modules|bower_components)/,
                loader: 'babel-loader',
                query: {
                    presets: ['es2015', 'react']
                } //将react编译成js文件
            },
            { test: /\.css$/, loader: 'style-loader!css-loader' },
            //打包css文件
            { test: /\.scss$/, loader: 'style!css!sass?sourceMap'},
            //编译sass文件
            { test: /\.(png|jpg)$/, loader: 'url-loader?limit=8192'}
            //对图片进行打包
        ]
    },
    //4、服务器依赖包配置
    devServer: {//注意:网上很多都有colors属性,但是实际上的webpack2.x已经不支持该属性了
        contentBase: "./build",//本地服务器所加载的页面所在的目录
        historyApiFallback: true,//不跳转
        inline: true//实时刷新
    }
}


上面配置中devtool:是浏览器对ES6的识别,inline:是内联模式,相当于webpack-dev-server --inline。


效果如下:




至此,就可以断点调试了。


Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐