javascript - react在webstorm下的配置问题
大家讲道理
大家讲道理 2017-04-11 13:25:34
[JavaScript讨论组]


一直报这个错误

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(2)
ringa_lee

自己解决了。重新装了好几次babel-core,然后将配置项改成loaders: ['react-hot-loader/webpack', 'babel']

阿神

发下我的配置把
package.json

 "dependencies": {
    "amazeui-react": "^1.2.0",
    "chart.js": "^2.3.0",
    "core-js": "^2.4.1",
    "moment": "^2.14.1",
    "react": "^15.1.0",
    "react-dom": "^15.1.0",
    "react-router": "^2.5.1",
    "underscore": "^1.8.3"
  },
  "devDependencies": {
    "precss": "^1.4.0",
    "autoprefixer": "^6.3.6",
    "assets-webpack-plugin": "^3.4.0",
    "babel-core": "^6.10.4",
    "babel-loader": "^6.2.4",
    "babel-plugin-add-module-exports": "^0.2.1",
    "babel-plugin-transform-object-assign": "^6.8.0",
    "babel-plugin-transform-object-rest-spread": "^6.8.0",
    "babel-preset-es2015": "^6.9.0",
    "babel-preset-react": "^6.11.1",
    "babel-preset-stage-0": "^6.5.0",
    "clean-webpack-plugin": "^0.1.9",
    "css-loader": "^0.23.1",
    "extract-text-webpack-plugin": "^1.0.1",
    "file-loader": "^0.9.0",
    "image-webpack-loader": "^2.0.0",
    "node-sass": "^3.8.0",
    "postcss-loader": "^0.9.1",
    "react-addons-css-transition-group": "^15.2.1",
    "sass-loader": "^4.0.0",
    "scss-loader": "0.0.1",
    "style-loader": "^0.13.1",
    "url-loader": "^0.5.7",
    "webpack": "^1.13.1",
    "whatwg-fetch": "^1.0.0"
  }

webpack.config.js

var path = require('path');
var fs = require('fs');
var autoprefixer = require('autoprefixer');
var precss = require('precss');
var webpack = require('webpack');
//plugin
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var CleanWebpackPlugin = require('clean-webpack-plugin');
var AssetsPlugin = require('assets-webpack-plugin');
var assetsPluginInstance = new AssetsPlugin({
    filename: './web/app/dashboard/dist/manifest.json'
});
var plugins = [];
var entry = {
    app: './web/app/dashboard/src/index.jsx'
};
if (process.env.NODE_ENV === 'production') {
    plugins = [
        new CleanWebpackPlugin(['dist'], {
            verbose: true,
            root: path.join(__dirname, 'web', 'app', 'dashboard')
        }),
        new webpack.optimize.UglifyJsPlugin({
            compress: {
                warnings: false
            }
        }),
        new webpack.DefinePlugin({
            "process.env": {
                NODE_ENV: JSON.stringify("production")
            }
        }),
        new ExtractTextPlugin("[name].[hash].css"),
        assetsPluginInstance
    ];
    entry.react = ['react', 'react-router', 'react-dom'];
    entry.core = ['underscore', 'core-js', 'whatwg-fetch'];
    entry.moment = ['moment'];
} else {
    plugins = [
        new ExtractTextPlugin("app.bundle.css")
    ];
}
module.exports = {
    entry: entry,
    output: {
        sourceMapFilename: '[file].map',
        publicPath: process.env.NODE_ENV === 'production' ? '/app/dashboard/dist/' : 'http://localhost:8010/app/dashboard/dist/',
        filename: process.env.NODE_ENV === 'production' ? '[name].[hash].js' : 'app.bundle.js',
        path: './web/app/dashboard/dist'
    },
    postcss: function () {
        return {
            defaults: [precss, autoprefixer],
            cleaner: [autoprefixer({browsers: ["ios >= 7", "android >= 4.0"]})]
        };
    },
    module: {
        loaders: [
            {test: /\.js$/, exclude: /node_modules/, loader: 'babel'},
            {
                test: /.jsx?$/,
                loader: 'babel-loader',
                exclude: /node_modules/,
                query: {
                    presets: ['es2015', 'react']
                }
            },
            {
                test: /\.(jpe?g|png|gif|svg)$/i,
                loaders: [
                    "file?name=img/[hash:16].[ext]",
                    "image-webpack?bypassOnDebug&optimizationLevel=9&interlaced=false"
                ]
            },
            {test: /\.css$/, loader: ExtractTextPlugin.extract('style', 'css!postcss')},
            {test: /\.scss$/, loader: ExtractTextPlugin.extract('style', 'css!postcss!sass')},
            {test: /\.(eot|ttf|woff)/, loader: 'file?name=fonts/[hash].[ext]'}
        ]
    },
    resolve: {
        extensions: ['', '.js', '.jsx']
    },
    plugins: plugins
};
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号