2016-03-22 23 views
3

Hala tepki vermek tamamen yeni. Aşağıdaki içeriği ile index.html dosyasında oluşturma çalıştı:Tepki Çekilmemiş Referans Hata - nesne/sınıf tanımlı değil

<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="utf-8"> 
    <title>React Tutorial</title> 
    <!-- Not present in the tutorial. Just for basic styling. --> 
    <link rel="stylesheet" href="css/base.css" /> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.7/react.js"></script> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.7/react-dom.js"></script> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.6.15/browser.js"></script> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/marked.min.js"></script> 
    </head> 
    <body id="html-body"> 
    <div id="content"></div> 
    <script type="text/babel" src="scripts/box.js"></script> 
    <script type="text/babel"> 
    ReactDOM.render(
     <Box />, 
     document.getElementById('content') 
    ); 
    </script> 
    </body> 
</html> 

Ve scripts/box.js yılında Aşağıdaki kod var:

var Box = React.createClass({ 
    render: function() { 
    return (
     <h2>Purple Monkey</h2> 
    ); 
    } 
}); 

Tarayıcımdaki index.html görüntülerken, hatası alıyorum Uncaught ReferenceError: Box is not defined. Ama Box sınıfını tanımladıktan sonra ReactDOM.render satırını index.html scripts/box.js içine taşıdığımda, her şey çalışır.

scripts/box.js'un dışından neden ReactDOM.render yürütemiyorum? Diğer javascript dosyaları tarafından kullanılmasını sağlamak için bir tepki bileşenini düzgün şekilde nasıl ekleyebilirim/gerektirir?

+1

@John