借助前端构建工具webpack

1、webpack是facebook为react量身打造的构建工具

2、主要作用是实现模块化,代码整合,代码分割的作用

3、使用webpack整合以后 也不需要使用browser进行将jsx转成js了

webpack实现模块化---什么是模块化

1、模块指的是一组具有同等属性和功能的集合叫做模块和类的概念相似

2、react模块化指的是一个js中存放一个或多个组件,这些组件通过commonjs规范对外提供接口

3、在其他组件当中可以调用这些对外提供成接口的组件

-----------------------------------------------------------------------------------------------------

commonjs规范

1、一个js内部的函数或者变量想要被外部调用

2、想在另一个函数中调用这些接口 需要通过require(js路径)引入组件,这样实现了一个js调用另外一个js里面的内容

-----------------------------------------------------------------------------------------------------

npm init

npm install webpack --save-dev

npm install jsx-loader --save-dev

npm install react --save-dev

npm install react-dom --save-dev

var React=require('react')
var ReactDOM=require('react-dom')
var Head=require('./a.js')
var Nav=require('./b.js')
var Con=require('./c.js')
var Demo=React.createClass({
render:function(){
return(
<div>
<Head/>
<Nav/>
<Con/>
</div>
)
}
})
ReactDOM.render(<Demo/>,document.getElementById('out'))

entry.js

module.exports={
entry:'./js/entry.js',/**入口文件**/
output:{/**输出目录**/
path:'./js',/**输出路径**/
filename:'output.js'/**输出文件名称**/
},
module:{
loaders:[
{
test: /\.js$/, /**通过入口处理匹配js文件**/
loader: "jsx-loader", /**使用哪个加载器 css-loader,coffee-loader,babel-loader**/
}
]
}
}
/****
1.通过入口 寻找入口里面调用的组件 文件 自动处理有依赖 2.代码整合 之所以实现a.js调用b.JS 整合都整合在了一个大文件中
***/

webpack.config.js

生成output.js 然后在index.html中引入输出文件。

React模块化开发的更多相关文章

  1. React+gulp+browserify模块化开发

    阅读本文需要有React的基础知识,可以在React 入门实例教程和React中文官网进行基础学习. 没有React基础也可以学习本文,本文主要不是学习React,而是gulp+browserify进 ...

  2. React Native开发技术周报1

    (一).资讯 1.React Native 0.21版本发布,最新版本功能特点,修复的Bug可以看一下已翻译 重要:如果升级 Android 项目到这个版本一定要读! 我们简化了 Android 应用 ...

  3. 前端模块化开发篇之grunt&webpack篇

    几个月前写了一篇有关gulp和browserify来做前端构建的博客,因为browserify用来做js的打包时可能有些麻烦(特别是在写React的时候),所以这里再强烈推荐一款js打包工具-webp ...

  4. 前端模块化开发学习之gulp&browserify篇

     随着web应用的发展,前端的比重占得越来越多,编写代码从而也越来越复杂.而通常我们需要将不同功能或者不同模块的代码分开写,最后在html中一起加载,这样做是可以的,但是当你需要进行维护或者是二次开发 ...

  5. arcgis api 4.x for js 结合 react 入门开发系列初探篇(附源码下载)

    你还在使用 JQuery 或者 Dojo 框架开发 arcgis api 4.x for js 吗?想试试模块化开发吗?随着前端技术的发展,arcgis api 4.x for js 也有了结合 re ...

  6. JAVAScript:前端模块化开发

    目录 一:前端模块化概要 1.1.模块化概要 1.2.函数封装 1.3.对象封装 1.4.立即执行函数表达式(IIFE) 1.5.模块化规范 1.5.1.CommonJS 1.5.2.AMD((Asy ...

  7. JavaScript学习总结(六)——前端模块化开发

    早期的javascript版本没有块级作用域.没有类.没有包.也没有模块,这样会带来一些问题,如复用.依赖.冲突.代码组织混乱等,随着前端的膨胀,模块化显得非常迫切. 前端模块化规范如下: 一.前端模 ...

  8. 初学seaJs模块化开发,利用grunt打包,减少http请求

    原文地址:初学seaJs模块化开发,利用grunt打包,减少http请求 未压缩合并的演示地址:demo2 学习seaJs的模块化开发,适合对seajs基础有所了解的同学看,目录结构 js — —di ...

  9. JS模块化开发:使用SeaJs高效构建页面

    一.扯淡部分 很久很久以前,也就是刚开始接触前端的那会儿,脑袋里压根没有什么架构.重构.性能这些概念,天真地以为前端===好看的页面,甚至把js都划分到除了用来写一些美美的特效别无它用的阴暗角落里,就 ...

随机推荐

  1. Windows安装mysql-python提示:error: Microsoft Visual C++ 9.0 is required

    Windows安装mysql-python提示:error: Microsoft Visual C++ 9.0 is required,Get it from http://aka.ms/vcpyth ...

  2. js 模板引擎

    template = document.querySelector('#template').innerHTML, result = document.querySelector('.result') ...

  3. SSL证书的生成方法

    在Linux下,我们进行下面的操作前都须确认已安装OpenSSL软件包. 1.创建根证书密钥文件root.key: [root@mrlapulga:/etc/pki/CA/private]#opens ...

  4. QT5 && VS2013配置

    1.下载安装包 qt-opensource-windows-x86-msvc2013_64-5.7.0.exe VS2013_RTM_ULT_ENU.iso 插件:qt-vs-addin-msvc20 ...

  5. ESLint系列:ESLint入门安装及简单配置

    1.eslint需要依赖node.js环境,在配置之前需要安装好node.js; 2.npm install eslint --save-dev 或 npm install eslint --save ...

  6. Android学习探索之运用MVP设计模式实现项目解耦

    前言: 一直致力于提高开发效率降低项目耦合,今天想抽空学习一下MVP架构设计模式,学习一下如何运用到项目中. MVP架构设计模式 MVP模式是一种架构设计模式,也是一种经典的界面模式.MVP中的M代表 ...

  7. java复习(4)---数字处理类

    java本身自带一些封装好的类方便数字问题的处理,review下方便以后使用 DecimalFormat类 可格式化数字格式,控制输出格式 Math类 提供三角函数.指数函数.取整函数.最大最小函数. ...

  8. 剑指Offer面试题1

    面试题1: 题目描述: 如下为类型CMyString的声明,请为该类型添加赋值运算符函数. class CMyString { public: CMyString(char* pData = NULL ...

  9. 苹果笔记本只能上QQ,微信,任何浏览器不能打开网页的问题。

    我的笔记本一共遇到过两次这种情况.第一次是浏览器输入域名打不开网页,而输入ip地址可以打开.这就是DNS服务器的问题,解决方法很简单.在系统偏好设置里面找到网络,然后,点击正在连接的网络的高级选项,选 ...

  10. C语言学习第四章

    今天学习C语言循环结构,为什么要用循环呢?因为有时候我们对一堆的数字进行重复的处理的时候要重复的编写一些相同或者差不多的代码,让程序显得很臃肿,而且写着也麻烦,如果用循环来写的话能简化很多,出错的话也 ...