React无法导入CSS文件,并抛出错误

时间:2018-03-19 12:22:34

标签: css reactjs gulp browserify babelify

我是React和gulp的新手,我正在尝试构建一个示例项目。我设法为gulp包含一个React任务,转换我的反应条目文件(App.js),但问题是每当我在我的App.js中导入的CSS文件中插入规则时,我都会收到错误,当css文件为空时一切正常!!!

这是代码

反应文件:

import React, { Component } from 'react';
import Header from './header'
import Footer from './footer'
import Homepage from './homepage'
import style from './css/main.css'

class App extends Component {
  render() {
    return (
      <div className="App">
        <Header/>
        <Homepage />
        <Footer/>
      </div>
    );
  }
}
export default App;

这是我的gulp文件:

const browserify    = require('browserify');
const babelify      = require('babelify');
const source        = require('vinyl-source-stream');
const babel         = require('gulp-babel');
const sourcemaps    = require('gulp-sourcemaps');
const reactify      = require('reactify');

gulp.task('react' , function(){
  return browserify({
            entries: ['./src/App.js'],
        })
        .transform(babelify , {presets: ["es2015", "react"]})
        .bundle()
        .pipe(source('bundle.js'))
        .pipe(gulp.dest('./src/js'));
});

3 个答案:

答案 0 :(得分:2)

只需用此

替换css导入代码即可
import style from './css/main.css'

import './css/main.css'

答案 1 :(得分:1)

您需要browserify-css来编译css文件。

npm i -D browserify-css

然后将转换代码添加到gulp文件中。

transform: [
  ['babelify', {
      "presets": ['es2015', 'react']
    }
  ],
  ['browserify-css']
]

答案 2 :(得分:0)

不工作

当css文件为空时我没有错误,但是一旦我写了规则我就收到了这个错误

events.is:183 扔错了; //未处理的错误&#39;事件

语法错误:意外错误&#39;事件