webstorm+react+webpack-demo

序言:通过这个小例子你也许、大概、可能会掌握以下几点

1、webstorm如何使用命令行

2、如何使用webpack的loaders把json格式的文件转化为javascript文件

3、如何使用不同的loaders把es6转换为浏览器可以识别的javascript文件

4、对于react而言如何使用合适的loaders把react的JSX文件转换为javascript文件

5、webpack的服务器启动后如何自动监听改动的文件以及浏览器如何自动刷新。

准备:安装好webstorm和nodejs

开始:

1、新建一个project文件夹为项目根目录,下面2个子文件夹分别是src和public,public目录下一个index.html。如下图

(注:html内引入的bundle.js是webpack最终编译后自动生成的文件,暂时不必理会)

2、在src下面建立一个message.json文件,输入以下内容

{
  "name":"Life",
  "do":"is a",
  "what":"gradient"
}

该文件是给webpack编译并有react渲染到html内的具体内容。

3、在src下面建立一个createdom.js输入以下代码,是基于react创建DOM并获取message.json内的信息javascript文件

/**
 * Created by Administrator on 2016/11/11.
 */
//6--------es6写法,最后由webpack来编译--------------
import React,{Component} from ‘react‘;//引入react和组件
import config from ‘./message.json‘;//引入message.json
class Greeter extends Component{
    render(){
        return(
            <h1>
                <span>{config.name}</span>
                <span>{config.will}</span>
                <span>{config.what}</span>
            </h1>
        );
    }
}
export default Greeter//导出组件Greeter

4、在src下面床架一个entry.js输入以下代码(也是webpack的入口文件!!)

/**
 * Created by Administrator on 2016/11/11.
 */
//6、编译es6由webpack最后的配置来编译
import React from ‘react‘;//引入react
import {render} from ‘react-dom‘;//引入react-dom的render方法
import Greeter from ‘./createdom‘;//从createdom.js引入Greeter组件
import ‘./main.css‘;//导入css文件,最后由css-loader来处理该模块
render(<Greeter />,document.getElementById(‘app‘));//把Greeter组件挂载到id为app的div内

5、创建package.json文件,并安装所有需要的依赖包(npm太慢,这里使用cnpm),在webstorm内使用命令行

a:点击webstorm左下角的 Terminal 按钮弹出内置命令行,进入project根目录,如下图

b:输入命令 cnpm init ,快速建立一个package.json文件(如果你的所有依赖包安装成功该文件内都会提示)

等待package.json文件自动生成后再往下继续。

c:输入命令:cnpm install --save-dev webpack,安装webpack依赖包,

此时project目录下回自动生成一个node_modules文件夹,该文件有点大,webstorm会自动加载耗费时间,建议:右击node_modules文件夹》Mark Directory As》Excluded

6、在project根目录创建一个webpack.config.js文件输入以下代码,这也是weback默认的配置文件(属于重要角色)

/**
 * Created by Administrator on 2016/11/10.
 */
var webpack = require(‘webpack‘);
module.exports = {
    //2、进出口文件配置
    entry:__dirname+‘/app/main.js‘,//指定的入口文件,“__dirname”是node.js中的一个全局变量,它指向当前执行脚本所在的目录
    output: {//输出
        path: __dirname+‘/public‘,//输出路径
        filename: ‘bundle.js‘//输出文件名
    },
    module: {//在配置文件里添加JSON loader
        loaders: [
            {
                test: /\.json$/,
                loader: "json"
            },
            {//6、编译es6配置
                test:/\.js$/,
                exclude:/node_modules/,
                loader:‘babel‘,//在webpack的module部分的loaders里进行配置即可
                query:{
                    presets:[‘es2015‘,‘react‘]
                }
            },
            {//3、CSS-loader
                test:/\.css$/,
                loader:‘style!css‘//添加对样式表的处理
            }

        ]
    },
    //4、服务器依赖包配置
    devServer: {
        contentBase: "./public",//本地服务器所加载的页面所在的目录
        colors: true,//终端中输出结果为彩色
        historyApiFallback: true,//不跳转
        inline: true//实时刷新
    }
}

该配置中用到了几个loader,Loaders是webpack中最让人激动人心的功能之一了。通过使用不同的loader,webpack通过调用外部的脚本或工具可以对各种各样的格式的文件进行处理,比如说分析JSON文件并把它转换为JavaScript文件,或者说把下一代的JS文件(ES6,ES7)转换为现代浏览器可以识别的JS文件。或者说对React的开发而言,合适的Loaders可以把React的JSX文件转换为JS文件。

继续webstorm的命令行分别安装:cnpm install --save-dev css-loader、style-loader、json-loader、babel-core、babel-loader、babel-preset-es2015、babel-preset-react、webpack-dev-server依赖包,并cnpm install --save react和react-dom

a:cnpm install --save-dev css-loader

b:cnpm install --save-dev style-loader

c:cnpm install --save-dev json-loader

d:cnpm install --save-dev babel-core

e:cnpm install --save-dev babel-loader

f:cnpm install --save-dev babel--preset-es2015

g:cnpm install --save-dev babel-preset-react

h:cnpm install --save-dev webpack-dev-server

i:cnpm install --save- react

j:cnpm install --save- react-dom

上面都安装成功后你的package.json里会多出如下内容

时间: 2024-10-10 23:58:34

webstorm+react+webpack-demo的相关文章

scss + react + webpack + es6

scss + react + webpack + es6 写在前面: 刚学习完慕课网里的一个幻灯片案例,自己加了刚学的react,两者结合.首先让大家看看效果 点击此处 你可以先用纯js实现上面的效果:我的github上的 JS代码 或者 观看慕课提供的课程.再趁热打铁加上react React分析 JS实现 对于js来说,下面按钮一点击,就能根据当前的索引为按钮和图片绑定对应好的样式:取到对应的DOM元素,加上定义好的样式名,就能实现绑定效果. React实现 但对于React来说,组件化开发

react + webpack +es6 hello world

1,目录 首先建立package.json文件 { "name": "react-webpack", "version": "1.0.0", "description": "webpack demo", "main": "index.js", "scripts": { "start": "webpa

部署React+webpack工程的步骤

# 部署React+webpack工程的步骤ps:以Mac os系统做开发环境.因为npm现在使用灰常的慢,所以我使用淘宝境像cnpm. 1,准备工作: 先确保存已经安装了node.js: 2,文件部署: (1),在终端中找到react-build项目的目录,键入cnpm init初始化一个package.json文件,该文件是存放接下来项目用的一些模块, 在终端中根据提交一步步的输入,或者可以直接新建一个package.json文件,文件内容大概如下: { "name": "

react+webpack+ES6搭建项目

react+webpack+ES6打包搭建框架的步骤及部分详解 npm init 此条命令是创建一个npm项目 NPM 全称 node package manager, 是 nodejs 的包管理工具,使用它让我们可以更方便的使用别人的代码,以及向别人分享我们的代码. 执行后,npm会引导输入一些基本信息,可以默认按回车键,然后会生成一个package.json文件,包含基本信息,后续的依赖也会保存到它里边. npm install react react-dom --save 安装react和

React + Webpack (jsx +less)

React项目的初始化.webpack的安装.如何使用jsx和less. 一.初始 React 项目 react项目的初始化比较简单,我用的就是react的脚手架.三种方式: 1.NPM npm init react-app my-app 2.NPX npx create-react-app my-app 3.Yarn yarn create react-app my-app my-app 是项目的名字,运行命令时会在当前目录下自动创建一个名字叫作 my-app 的项目文件夹.命令运行完毕,简单

React+Webpack+Webstorm开发环境搭建

需要安装的软件 node.js npm包管理 Webstorm 由于6.3.0版本之后会自带npm的包管理所以不需要单独的安装npm nodejs(包含npm)安装在默认路径C:\Program Files\nodejs比较好,也不是很大 Webstrom安装完成后,在打开的 License Activation 窗口中选择 License server. 在输入框输入网址:http://idea.iteblog.com/key.php 最后点击 Activate 构建项目和安装依赖包 使用we

React+Webpack+ES6环境搭建(自定义框架)

引言 目前React前端框架是今年最火的.而基于React的React Native也迅速发展.React有其独特的组件化功能与JSX的新语法,帮助前端设计有了更好的设计与便捷,而React Native更是扩大了前端的边界. 说道React,那就不得不说一下Webpack凭借它异步加载和可分离打包等优秀的特性,走在取代Grunt和Gulp的路上.而面向未来的ES6,更是支持模块化处理. 下面我就分享一下关于Webpack+React+ES6的环境搭建(通用)[附加发布版] 准备工作 首先需要准

使用scss + react + webpack + es6实现幻灯片

写在前面: 刚学习完慕课网里的一个幻灯片案例,自己加了刚学的react,两者结合.首先让大家看看效果 点击此处 你可以先用纯js实现上面的效果:我的github上的 JS代码 或者 观看慕课提供的课程.再趁热打铁加上react React分析 JS实现 对于js来说,下面按钮一点击,就能根据当前的索引为按钮和图片绑定对应好的样式:取到对应的DOM元素,加上定义好的样式名,就能实现绑定效果. React实现 但对于React来说,组件化开发的思想,可不是取得DOM元素就了事,因为React设计的初

react+webpack+redux+router+ant 构架react开发环境(1)

需要安装的软件 node.js npm 推荐使用使用[email protected]以上的版本,因为6.3.0版本之后会自带npm的包管理所以不需要单独的安装npm,因为伟大的墙,所以介意大家更换镜像, 安装完毕之后,打开终端(mac)window电脑因该是cmd,输入命令 node -v 会看到当前的node版本号, 就说明安装成功了,可以下面的步骤了. 构建项目 新建一个文件夹 使用webstorm编辑该文件夹,之后打开控制台,输入  npm init 来生成一个 package.json