React全栈开发框架快速开发 @symph/joy=webpack+babel+redux+MVC+依赖注入+Dva兼容+服务端渲染+插件化配置+优化集成

现代前端应用是一个工程化的系统,和jquery时代有着很大的不同,以前工作中大部分时间都在模板填充、事件绑定、DOM更新等,而现在前端应用和后端工程一样,是一个完整的系统化工程,数据流和控制流如何流转?数据该如何存放?业务方法如何管理?UI组件如何封装和路由?最后还有编译打包,优化等问题。幸运的是已有各种工具帮我们解决了绝大部分的问题,可如何将这些工具库组合在一起形成一个可用的应用,并不是一件简单的事情,例如我们需要大量的配置来使webpack和babel按照要求工作。

那如何能快速的启动工作呢?选择一个前端框架定会事半功倍,例如最常用的react-create-appnext.jsdva-cli等,都只需要简单的几步操作就可以开始进行业务开发了。如果你还没有听说过它们或者类似的框架,相信你现在正在被各种配置文件、应用结构、多人协同开发效率等问题感到困惑。这里介绍的是另外一个前端框架@symph/joy,它结合了next.js和dva的特点,是一个全栈型的框架(因为不同项目对UI的要求差异较大,所以未集成UI组件),只要你会js+react就可以开发高质量的前端应用。

react-create-app是一个比较基础的脚手架,很多东西还得开发者自己搭建,并不建议在实际工程中直接使用。

也许你现在对webpack、babel、redux还完全不了解,没关系,我们依然可以开始工作,因为这些底层技术@symph/joy已经为你准备好了,等你以后想深入定制开发,也可以轻松升级定制它们,下面开始写第一个页面。

创建项目目录

运行npm init创建一个空工程,并填写项目的基本信息,当然也可以在一个已有的项目中直接安装。

npm install --save @symph/joy react react-dom

添加NPM脚本到package.json文件:

{
   
   
  "name": "hello-word",
  "version": "1.0.0",
  "scripts": {
   
   
    "dev": "joy"
  }
}

编写第一个页面

1. 写代码

创建./src/index.js文件,并插入以下页面代码:

import React, {
   
    Component } from 'react'

export default class Index extends Component {
   
   
  render () {
   
   
    return (<div>
      <div>Welcome to @symph/joy!</div>
    </div>)
  }
}

2. 运行

最后运行yarn run dev命令,在浏览器中输入访问地址http://localhost:3000

3. 做了什么

到此处,我们拥有了哪些呢?

  • 应用入口(./src/index.js),一切都从这里开始,以后可以逐步实现更多功能
  • 启动了一个开发服务器,支持服务端渲染和请求代理
  • 一个零配置的webpack+babel编译器,确保代码在服务端和浏览器上正确运行
  • ES6、7、8等高级语法支持,如:classasync@注解、{...}解构等
  • 热更新,调试模式下,在浏览器不刷新的情况下,使更改立即生效
  • 静态资源服务,在/static/目录下的静态资源,可通过http://localhost:3000/static/访问
  • 支持静态版本导出,可部署到静态服务上,比如Nginx和CDN上

使用样式

jsx内建样式

内建了 styled-jsx 模块,支持Component内独立域的CSS样式,不会和其他组件的同名样式冲突。

// src/hello.js
import React, {
   
    Component } from 'react'

export default class Hello extends Component {
   
   
  render () {
   
   
    return (<div>
       <div className="message">Welcome to @symph/joy!</div>
       <style jsx>{
   
   `
	     .message {
           color: blue;
         }
       `}</style>
       <st
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值