首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >./~/常量中的错误-browserify/constants.json

./~/常量中的错误-browserify/constants.json
EN

Stack Overflow用户
提问于 2016-10-30 19:49:35
回答 1查看 827关注 0票数 1

我在客户端和服务器端分割了我的文件夹,但是我没有从父文件夹中工作,我表现得好像它们是两个不同的文件夹.现在我想部署到Heroku,但是我需要一个主文件夹,所以我想改变我的webpack.config,这样我就可以从我的新根文件夹运行脚本了。我得到了最后一个我无法解决的错误,尝试这些解决方案也帮不了我:第一第二

这是我正在犯的错误:

代码语言:javascript
复制
ERROR in ./~/constants-browserify/constants.json
Module parse failed: /Users/Documents/Twitch/testbot/node_modules/constants-browserify/constants.json Unexpected token (2:12)
You may need an appropriate loader to handle this file type.
| {
|   "O_RDONLY": 0,
|   "O_WRONLY": 1,
|   "O_RDWR": 2,
 @ ./src/js/reducers/chat.js 1:0-50
 @ ./src/js/script.js
 @ multi main

这是我的webpack.config.js:

代码语言:javascript
复制
// changed some loader syntax after reading
// https://webpack.js.org/how-to/upgrade-from-webpack-1/

const path = require(`path`);

const webpack = require(`webpack`);
const {UglifyJsPlugin} = webpack.optimize;

const CopyWebpackPlugin = require(`copy-webpack-plugin`);
const ExtractTextWebpackPlugin = require(`extract-text-webpack-plugin`);
const configHtmls = require(`webpack-config-htmls`)();

const extractCSS = new ExtractTextWebpackPlugin(`css/style.css`);

// change for production build on different server path
const publicPath = `/`;

// hard copy assets folder for:
// - srcset images (not loaded through html-loader )
// - json files (through fetch)
// - fonts via WebFontLoader

const copy = new CopyWebpackPlugin([{
  from: `./src/assets`,
  to: `assets`
}], {
  ignore: [ `.DS_Store` ]
});

const config = {

  entry: [
    `./src/css/style.css`,
    `./src/js/script.js`
  ],

  resolve: {
    // import files without extension import ... from './Test'
    extensions: [`.js`, `.jsx`, `.css`]
  },

  output: {
    path: path.join(__dirname, `server`, `public`),
    filename: `js/[name].[hash].js`,
    publicPath
  },

  devtool: `sourcemap`,

  module: {

    rules: [
      {
        test: /\.css$/,
        loader: extractCSS.extract([
          {
            loader: `css`,
            options: {
              importLoaders: 1
            }
          },
          {
            loader: `postcss`
          }
        ])
      },
      {
        test: /\.html$/,
        loader: `html`,
        options: {
          attrs: [
            `audio:src`,
            `img:src`,
            `video:src`,
            `source:srcset`
          ] // read src from video, img & audio tag
        }
      },
      {
        test: /\.(jsx?)$/,
        exclude: /node_modules/,
        use: [
          {
            loader: `babel`
          },
          {
            loader: `eslint`,
            options: {
              fix: true
            }
          }
        ]
      },
      {
        test: /\.(svg|png|jpe?g|gif|webp)$/,
        loader: `url`,
        options: {
          limit: 1000, // inline if < 1 kb
          context: `./src`,
          name: `[path][name].[ext]`
        }
      },
      {
        test: /\.(mp3|mp4)$/,
        loader: `file`,
        options: {
          context: `./src`,
          name: `[path][name].[ext]`
        }
      }
    ]

  },

  plugins: [
    extractCSS,
    copy
  ]

};

if(process.env.NODE_ENV === `production`){

  //image optimizing
  config.module.rules.push({
    test: /\.(svg|png|jpe?g|gif)$/,
    loader: `image-webpack`,
    enforce: `pre`
  });

  config.plugins = [
    ...config.plugins,
    new UglifyJsPlugin({
      sourceMap: true, // false returns errors.. -p + plugin conflict
      comments: false
    })
  ];

}

config.plugins = [...config.plugins, ...configHtmls.plugins];

module.exports = config;

这是错误中提到的减速器。

代码语言:javascript
复制
import {CHAT_MESSAGE_RECEIVED} from 'constants';

const chatReducer = (state = [], action) => {
  switch(action.type){
  case CHAT_MESSAGE_RECEIVED:
    console.log(state, action);
    return [...state, action.payload];

  default:
    return state;
  }
};

export default chatReducer;

知道我做错了什么来纠正这个错误吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-31 21:15:01

我导入了一个带有路径“常量”的文件,这个路径干扰了node_modules的常量-browserify文件夹。

通过更改常量的文件名和路径,我修正了错误。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40332933

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档