React 教程(一)

2016-11-20  本文已影响0人  凤爪dc

来源:菜鸟教程
React 是一个用于构建用户界面的 JAVASCRIPT 库。
在react中,我们用jsx来代替javascript,因为有如下优点:

JSX 执行更快,因为它在编译为 JavaScript 代码后进行了优化。
它是类型安全的,在编译过程中就能发现错误。
使用 JSX 编写模板更加简单快速。

不过也可以通过 {} 使用javascript

  <h1>{1+1}</h1>

我们可以看如下实例

ReactDOM.Render{
            <div>
              <h1></h1>
              <p data-myattribute = "somevalue"></p>
            </div>,
        document.getElementById('example')
    }

我们可以在通过div元素代码中添加多个标签,也可以添加自定义属性,不过添加自定义属性需要使用 data- 前缀。

引入js文件
我们可以将 React JSX 代码放在一个独立文件上,例如我们创建一个 helloworld_react.js 文件,则 在HTML中按如下引入。

  <script type="text/babel" src="helloworld_react.js"></script>

样式
React 可以使用内联样式,使用 camelCase 语法(就是将形如background-color转化为驼峰表示法:backgroundColor)来设置内联样式, React 会在指定元素数字后自动添加 px

  var myStyle = {
     fontSize: 100, 
     color: '#FF0000'
    };
  {/*注释...*/}
  ReactDOM.render( 
    <h1 style = {myStyle}>菜鸟教程</h1>,    
    document.getElementById('example')
    );

注释实例如上

渲染 HTML 标签 (strings) 或 React 组件 (classes)
通过在 JSX 里使用小写字母的标签名可以渲染HTML 标签

  var myDivElement = <div className="foo" />;
  ReactDOM.render(myDivElement, document.getElementById('example'));

通过创建一个大写字母开头的本地变量可以渲染 React 组件

  var MyComponent = React.createClass;
  var myElement = <MyComponent someProperty={true} />;
  ReactDOM.render(myElement, document.getElementById('example'));

React 组件

上面主要讲的是基本的使用

React的用途主要是创建组件使得应用更容易来管理,并且我们可以通过创建多个组件来合成一个组件,即把组件的不同功能点进行分离

可以通过一个实例来理解

  var HelloMessage = React.createClass({ 
  render: function() { 
        return (
                  <Name name={this.props.name} />
               );
                      }
    });

  var Name = React.createClass({ 
        render: function() { 
              return ( <h1>{this.props.name}</h1> ); 
                  }
              });

  ReactDOM.render(
     <HelloMessage name="World"/>, 
      document.getElementById('example')
  );

React.createClass 方法用于生成一个组件类 HelloMessage
<HelloMessage /> 实例组件类并输出信息。
可以使用 this.props 对象,向组件传递参数。
HelloMessage 组件使用了** Name 组件**来输出对应的信息,也就是说 HelloMessage 拥有 Name 的实例

上一篇下一篇

猜你喜欢

热点阅读