在浏览器中使用bootstrap和reactjs

时间:2016-08-06 17:06:06

标签: javascript django html5 reactjs twitter-bootstrap-3

我正在使用python中的Django项目。我正在尝试将bootstrap3.3与ReactJS一起使用。我没有使用任何包管理器,因为我想在浏览器中使用ReactJS几页,所以我简单了。

我按照以下顺序包含javascript库

<script src="/static/jquery/3.1.0/jquery.min.js"></script>
<script src="/static/react/15.3.0/react.min.js"></script>
<script src="/static/react-dom/15.3.0/react-dom.min.js"></script>
<script src="/static/babel-standalone/6.12.0/babel.min.js"></script>
<script src="/static/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="/static/bootstrap/3.3.7/css/bootstrap.min.css">

现在,在我的app / template / app文件夹中,我创建了login.html并使用bootstrap编写了一些html,如下所示:

<div class="container">
  <div class="row">
    <div class="col-md-4 col-md-offset-4">
      <div class="login-panel panel panel-default">
        <div class="panel-heading">
          <h3 class="panel-title">Enter email below</h3>
        </div>
        <div class="panel-body">
          <form role="form">
            <fieldset>
              <div class="form-group">
                <input class="form-control" placeholder="E-mail" name="email" type="email" autofocus />
              </div>
              <a href="index.html" class="btn btn-lg btn-success btn-block">Login</a>
            </fieldset>
          </form>
        </div>
      </div>
    </div>
  </div>
</div>

我的页面上有漂亮的表格

enter image description here

现在我尝试通过ReactJS注入相同的html,但整个CSS着色消失了

enter image description here

我不知道我做错了什么,有人可以帮助我吗?

以下是ReactJS代码:

var ReactLoginForm = React.createClass({
  render: function() {
    return (
      <div class="row">
        <div class="col-md-4 col-md-offset-4">
          <div class="login-panel panel panel-default">
            <div class="panel-heading">
              <h3 class="panel-title">Enter email below</h3>
            </div>
            <div class="panel-body">
              <form role="form">
                <fieldset>
                  <div class="form-group">
                    <input class="form-control" placeholder="E-mail" name="email" type="email" autofocus />
                  </div>
                  <a href="index.html" class="btn btn-lg btn-success btn-block">Login</a>
                </fieldset>
              </form>
            </div>
          </div>
        </div>
      </div>
    );
  }
});

ReactDOM.render(
  <ReactLoginForm />,
  document.getElementById('loginFrm')
);

和HTML代码:

<div class="container">
  <div id="loginFrm"></div>
</div>

1 个答案:

答案 0 :(得分:2)

尝试使用&#39; className&#39;作为属性而不是&#39; class&#39;作为&#39; class&#39;是javascript中的保留字,JSX基于javascript。 &#39; for&#39;的情况也是如此。属性。你必须使用&#39; htmlFor&#39;代替。