ReferenceError : React가 정의되지 않은 것
이 튜토리얼을 사용하여 ReactJS가 레일과 함께 작동하도록 노력하고 있습니다. 이 오류가 발생합니다.
Uncaught ReferenceError: React is not defined
하지만 난 브라우저 콘솔에서 객체 반응에 액세스 할 수 있습니다. I도 추가 공개 / DIST / 터보 react.min.js 설명 된대로 여기에 추가 설명 application.js 라인을 이 답변에 행운을. 또한 오류를 제공합니다.//= require components
var React = require('react')
Uncaught ReferenceError: require is not defined
누구 든지이 문제를 해결하는 방법을 제안 할 수 있습니까?
[편집 1]
참조 용 소스 코드 :이
내 comments.js.jsx
파일입니다.
var Comment = React.createClass({
render: function () {
return (
<div className="comment">
<h2 className="commentAuthor">
{this.props.author}
</h2>
{this.props.comment}
</div>
);
}
});
var ready = function () {
React.renderComponent(
<Comment author="Richard" comment="This is a comment "/>,
document.getElementById('comments')
);
};
$(document).ready(ready);
그리고이 내 index.html.erb
:
<div id="comments"></div>
webpack을 사용하여 다음 청크로 내 자바 펼쳐를 빌드 할 때이 오류를 재현 할 수 있습니다 webpack.config.json
.
externals: {
'react': 'React'
},
위의 구성은 웹팩이 require('react')
npm 모듈을로드하여 해결하지 않고 대신라는 전역 변수 (즉, window
선언에서) 를 기대 합니다 React
. 해결은이 구성 부분을 제거하거나 (React가 자바 서비스와 함께 제공됨)이 파일이 실행되기 전에 React 프레임 워크를 외부에서로드 하기 위해 입니다 window.React
.
내가 사용했기 때문에 오류가 발생했습니다.
import ReactDOM from 'react-dom'
반응을 가져 오지 않고 아래로 변경하면 :
import React from 'react';
import ReactDOM from 'react-dom';
오류가 해결되었습니다. :)
가능한 이유는 1. 페이지에 React.JS를로드하지 않았고, 2. 페이지에 위의 계속로드했습니다. 도전은 위에 펼쳐지는 것입니다.
추신
가능한 해결책.
react
webpack 구성 내부의 externals 섹션에서 언급 한 경우 먼저 react js 파일을 html로 직접로드해야합니다.bundle.js
- 라인이 있는지 확인하십시오
import React from 'react';
Webpack을 사용하는 경우 require
코드 에 명시 적으로 추가하지 않고도 필요할 때 React를로드하도록 할 수 있습니다 .
webpack.config.js에 추가하십시오 .
plugins: [
new webpack.ProvidePlugin({
"React": "react",
}),
],
http://webpack.github.io/docs/shimming-modules.html#plugin-provideplugin을 참조하십시오 .
Santosh에 추가 :
React를로드 할 수 있습니다.
import React from 'react'
import React, { Component, PropTypes } from 'react';
이것은 또한 작동 할 수 있습니다!
더하다
import React from 'react'
import { render } from 'react-dom'
window.React = React
렌더링 전 기능
이것은 React가 정의되지 않았다는 오류가 발생하기 때문입니다.
창에 반응을 추가하면 이러한 문제를 해결할 수 있습니다.
내 코드 react.createClass
에서 대문자 대신 소문자로 구성 요소 정의를 잘못 입력했기 때문에이 오류가 발생했습니다 React.createClass
.
오류가 반응이 정의되지 않은 경우 추가하십시오 ==>import React from 'react';
ReactDOM이 정의되지 않은 경우 ==> 추가하십시오.import ReactDOM from 'react-dom';
참고 URL : https://stackoverflow.com/questions/32070303/uncaught-referenceerror-react-is-not-defined
'ProgramingTip' 카테고리의 다른 글
Windows 7의 PowerShell : 일반 사용자를위한 Set-ExecutionPolicy (0) | 2020.12.06 |
---|---|
웹 사이트에 '이메일로 공유'링크 추가 (0) | 2020.12.06 |
자바 어레이, 내장 찾기 (0) | 2020.12.06 |
ActiveRecord ROLLBACK의 원인을 찾는 방법 (0) | 2020.12.06 |
시작 선택의 시작 / 끝으로 이동하는 방법은 무엇입니까? (0) | 2020.12.06 |