gulp를 사용하여 모듈을 찾고 반응 할 수 없습니다.

서브로

나는 react.js를 처음 접했고 어떻게 든 gulp 빌드 도구로 반응 환경을 설정했습니다. 커스텀 React 컴포넌트를 만들어 다른 컴포넌트에서 사용하고 싶습니다. 내 코드를보고 도와주세요.

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>React and ES6</title>
</head>
<body>

    <div id="testdiv"></div>

    <script src="web/js/dist/login.js"></script>
</body>
</html>

Header.js

import React from "react";

export class Header extends React.Component {
  render(){
    return (
      <nav class="navbar navbar-static-top">
        <div class="navbar image-container"></div>
        <nav class = "navbar menu-container">
          <ul>
            <li><a>Home</a></li>
            <li><a>About</a></li>
            <li><a>Contact Us</a></li>
          </ul>
        </nav>
      </nav>
    );
  }
}

및 Login.js

import React from "react";
import {render} from "react-dom";
import {Header} from "./components/Header.js";

class Login extends React.Component {

  render(){
    return(
      <div>
        <Header/>
        <h1>Login Test!!</h1>

      </div>
    );
  }
}
render(<Login/>, window.document.getElementById("testdiv"));

gulpfile.js

// declarations, dependencies
// ----------------------------------------------------------------------------
var gulp = require('gulp');
var browserify = require('browserify');
var source = require('vinyl-source-stream');
var gutil = require('gulp-util');
var babelify = require('babelify');
var notifier = require('node-notifier');
var watchify = require('watchify');

// External dependencies you do not want to rebundle while developing,
// but include in your application deployment
var dependencies = [
    'react',
    'react-dom'
];

// Gulp tasks
// ----------------------------------------------------------------------------
gulp.task('scripts', function () {
    bundleApp(true);
});

gulp.task('deploy', function (){
    bundleApp(true);
});

gulp.task('watch', function () {
    gulp.watch([
    './app/Controller/*.js'
  ], ['scripts']);
});


var notify = function(title, message) {
  notifier.notify({
    title: title,
    message: message
  });
  gutil.log(title + ': ' + message);
};

// When running 'gulp' on the terminal this task will fire.
// It will start watching for changes in every .js file.
// If there's a change, the task 'scripts' defined above will fire.
gulp.task('default', ['scripts','watch']);

var reactFiles = {
  path: [
    {
      from: ['app/components/Header.js'],
      to: 'Header.js'
    },
    {
      from: ['app/components/Home.js'],
      to: 'Home.js'
    },
        {
      from: ['app/controller/login.js'],
      to: 'login.js'
    }
  ],
  watchPath: ['web/controller/*.js']
};

// Private Functions
// ----------------------------------------------------------------------------
function bundleApp(isProduction) {
    // Browserify will bundle all our js files together in to one and will let
    // us use modules in the front end.
  var finished = 0;
  reactFiles.path.map(function(reactModuleEntry){
    var appBundler = browserify(reactModuleEntry.from)
    .transform(babelify, { presets: ['es2015', 'react'] })
    .bundle();

    appBundler.pipe(source(reactModuleEntry.to))
    .pipe(gulp.dest('./web/js/dist'))
    .on('finish', function() {
            finished++;
            if (finished === (reactFiles.path.length - 1)) {
              notify('Reactify', 'build: done')
              //done();
            }
          });
  });

}

디렉토리 구조는

ReactPractice
|
|---index.html
|---gulpfile.js
|--app
    |---Components
    |             |--Header.js
    |---Controller
    |             |--Login.js

gulp 파일 실행시 오류

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: Cannot find module './components/Header.js' from '/home/subro/reactpractice/app/controller'
    at /home/subro/reactpractice/node_modules/browser-resolve/node_modules/resolve/lib/async.js:55:21
    at load (/home/subro/reactpractice/node_modules/browser-resolve/node_modules/resolve/lib/async.js:69:43)
    at onex (/home/subro/reactpractice/node_modules/browser-resolve/node_modules/resolve/lib/async.js:92:31)
    at /home/subro/reactpractice/node_modules/browser-resolve/node_modules/resolve/lib/async.js:22:47
    at Object.oncomplete (fs.js:107:15)
요 세프 와이너

import명령문 의 경로 는 호출 된 위치를 기준으로합니다. 에 비해 Login.js액세스하려면 디렉토리 위로 이동해야합니다 components/Header.js. 가져 오기를 다음으로 변경하십시오.

import {Header} from '../components/Header';

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

karma-webpack을 사용할 때 모듈 오류를 찾을 수 없습니다.

분류에서Dev

ionic start를 사용할 때 'read'모듈을 찾을 수 없습니다.

분류에서Dev

React를 사용하여 typescript 모듈을 해결할 수 없습니다.

분류에서Dev

pip를 사용하여 파이썬 모듈을 설치할 수 없습니다.

분류에서Dev

모듈의 모듈을 사용할 수 없습니다 응용 프로그램

분류에서Dev

모듈을 찾을 수 없음 : '반응 페이지 매김'을 해결할 수 없습니다.

분류에서Dev

모듈을 찾을 수 없음 : 반응 앱에서 '/root/project/node_modules/eslint-loader/index.js를 확인할 수 없습니다.

분류에서Dev

반응 상태를 사용하여 <select>의 기본값을 변경할 수 없습니다.

분류에서Dev

반응이 모듈을 찾을 수 없습니다

분류에서Dev

반응 오류 : './common'모듈을 찾을 수 없습니다.

분류에서Dev

java : .isDigit ()을 사용하려고 할 때 기호를 찾을 수 없습니다.

분류에서Dev

반응을 사용하여 요소의 값을 변경할 수 없습니다.

분류에서Dev

"모듈을 찾을 수 없음 : '반응'을 해결할 수 없음"을 수정하는 방법?

분류에서Dev

PHP에서 ffmpeg exec를 사용하여 파일을 찾고 압축 할 수 없습니다.

분류에서Dev

REACTJS 모듈을 찾을 수 없음 : 'axios'를 해결할 수 없습니다.

분류에서Dev

웹팩과 함께 flat-ui를 사용할 때 모듈을 찾을 수 없습니다.

분류에서Dev

사용자 지정 템플릿에서 생성 할 때 반응 앱 템플릿 모듈을 찾을 수 없음

분류에서Dev

Docker를 사용할 때 Python 모듈을 찾을 수 없음

분류에서Dev

RESTIFY를 사용하여 REST API에서 JSON을 반환 할 수 없습니다.

분류에서Dev

반응 애플리케이션에서 babel 모듈 리졸버 + eslint + 인덱스 파일을 사용할 때 모듈을 확인할 수 없습니다.

분류에서Dev

APP.JS에 대해 npm start를 사용하여 모듈을 찾을 수 없습니다.

분류에서Dev

codeigniter를 사용하여 고유 한 값을 선택할 수 없습니다.

분류에서Dev

npm을 통해 gulp를 설치하고 실행할 수 없습니다.

분류에서Dev

chrome-cookies-secure 모듈을 사용하여 Node.js 앱에서 Promise를 해결할 수 없습니다.

분류에서Dev

Ansible에서 deb 모듈을 사용하여 패키지를 제거 할 수 없습니다.

분류에서Dev

심볼릭 링크를 사용하여 노드 콘솔에서 모듈을로드 할 수 없습니다.

분류에서Dev

node.js 및 "request"모듈을 사용하여 UTF-8 링크를 요청할 수 없습니다.

분류에서Dev

Electron Project의 프로덕션 버전을 실행하려고 할 때 'xmlbuilder'모듈을 찾을 수 없습니다.

분류에서Dev

Elixir exq 워커를 실행할 때 모듈을 사용할 수 없습니다.

Related 관련 기사

  1. 1

    karma-webpack을 사용할 때 모듈 오류를 찾을 수 없습니다.

  2. 2

    ionic start를 사용할 때 'read'모듈을 찾을 수 없습니다.

  3. 3

    React를 사용하여 typescript 모듈을 해결할 수 없습니다.

  4. 4

    pip를 사용하여 파이썬 모듈을 설치할 수 없습니다.

  5. 5

    모듈의 모듈을 사용할 수 없습니다 응용 프로그램

  6. 6

    모듈을 찾을 수 없음 : '반응 페이지 매김'을 해결할 수 없습니다.

  7. 7

    모듈을 찾을 수 없음 : 반응 앱에서 '/root/project/node_modules/eslint-loader/index.js를 확인할 수 없습니다.

  8. 8

    반응 상태를 사용하여 <select>의 기본값을 변경할 수 없습니다.

  9. 9

    반응이 모듈을 찾을 수 없습니다

  10. 10

    반응 오류 : './common'모듈을 찾을 수 없습니다.

  11. 11

    java : .isDigit ()을 사용하려고 할 때 기호를 찾을 수 없습니다.

  12. 12

    반응을 사용하여 요소의 값을 변경할 수 없습니다.

  13. 13

    "모듈을 찾을 수 없음 : '반응'을 해결할 수 없음"을 수정하는 방법?

  14. 14

    PHP에서 ffmpeg exec를 사용하여 파일을 찾고 압축 할 수 없습니다.

  15. 15

    REACTJS 모듈을 찾을 수 없음 : 'axios'를 해결할 수 없습니다.

  16. 16

    웹팩과 함께 flat-ui를 사용할 때 모듈을 찾을 수 없습니다.

  17. 17

    사용자 지정 템플릿에서 생성 할 때 반응 앱 템플릿 모듈을 찾을 수 없음

  18. 18

    Docker를 사용할 때 Python 모듈을 찾을 수 없음

  19. 19

    RESTIFY를 사용하여 REST API에서 JSON을 반환 할 수 없습니다.

  20. 20

    반응 애플리케이션에서 babel 모듈 리졸버 + eslint + 인덱스 파일을 사용할 때 모듈을 확인할 수 없습니다.

  21. 21

    APP.JS에 대해 npm start를 사용하여 모듈을 찾을 수 없습니다.

  22. 22

    codeigniter를 사용하여 고유 한 값을 선택할 수 없습니다.

  23. 23

    npm을 통해 gulp를 설치하고 실행할 수 없습니다.

  24. 24

    chrome-cookies-secure 모듈을 사용하여 Node.js 앱에서 Promise를 해결할 수 없습니다.

  25. 25

    Ansible에서 deb 모듈을 사용하여 패키지를 제거 할 수 없습니다.

  26. 26

    심볼릭 링크를 사용하여 노드 콘솔에서 모듈을로드 할 수 없습니다.

  27. 27

    node.js 및 "request"모듈을 사용하여 UTF-8 링크를 요청할 수 없습니다.

  28. 28

    Electron Project의 프로덕션 버전을 실행하려고 할 때 'xmlbuilder'모듈을 찾을 수 없습니다.

  29. 29

    Elixir exq 워커를 실행할 때 모듈을 사용할 수 없습니다.

뜨겁다태그

보관