JSX入门

  1. 简介:
    1. 概念:JSX并不是一门新的语言,仅仅是语法糖,允许开发者在JavaScript中书写Html语法,最后每个Html标签都转化为JavaScript代码来运行。
    2. 环境:需要导入以下三个核心文件:
      1. react.js
      2. react-dom.js
      3. browser.min.js
    3. 载入方式:同样分为内链和外链。
    4. 标签类型:可分为两种
      1. 标准的Html标签
      2. 通过React.createClass()方法创建的组件类标签(一般首字母大写,为了区分Html标签)
    5. 转换:当遇到标签时,会调用解析器将标签进行转换

      <h3 width='10px'>标题</h3> 则会被转换成React.createElement("h3", {width:'10px'}, "标题"); ,同时会返回一个ReactElement对象(注:其参数>=3个,其中前两个参数的分别为:标签、属性,第三个以及以后的参数为其子元素)
      6. 执行JavaScript表达式
      > 如
      > > var msg = "Message"; > <h1>{msg}</h1> >
      7. 延展属性
      ```
      var porps={};
      props.foo="1";
      props.bar="1";
      <h1 {...props} foo="2">Some Messages</h1>
      //以上代码可转换成以下
      //... 遍历对象的所有属性
      React.creatElement("h1", React.__spread({}, props, {foo:"2"}), "Some Message");

    8. 自定义属性:
        > 注:H5给出方案,凡是以 data- 开头的自定义属性,可以渲染到页面,其他自定义属性将被忽略

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 128,879评论 18 137
  • 以下内容是我在学习和研究React时,对React的特性、重点和注意事项的提取、精练和总结,可以做为React特性...
    科研者阅读 7,360评论 2 21
  • 这篇笔记主要包含 Vue 2 不同于 Vue 1 或者特有的内容,还有我对于 Vue 1.0 印象不深的内容。关于...
    云之外阅读 4,607评论 0 29
  • 下面的代码即不是HTML,也不是JavaScript,而是JSX: JSX语言允许在常规JavaScript语句中...
    中年小钢炮阅读 143评论 0 1
  • Vue 实例 属性和方法 每个 Vue 实例都会代理其 data 对象里所有的属性:var data = { a:...
    云之外阅读 1,571评论 0 6
  • 如果,没有如果 你说这世界太真实,让人优雅的腐朽 可是我依然愿意 愿意吹着风,看阳光打在白衬衫的衣角 我愿意相信,...
    卑辰尊月阅读 77评论 0 1
  • 1,关于工作: 工作的不足一直有,但疏漏在慢慢减少,这得益于清单式工作管理。 把笔记当做大脑的延伸,效果太好了,不...
    俏村姑阅读 88评论 0 0
  • 粗心其实是学习能力不足造成的 一、家长对孩子粗心的误解: 1、误认为孩子主观不努力 孩子出现粗心的问题,大多数家长...
    王一涵666阅读 463评论 0 6