react

React进阶(十):React项目结构启动原理详解

牧云@^-^@ 提交于 2020-04-17 16:42:19
React调用顺序: index.html → index.js → components/组件 一般项目创建好后会有二个文件:index.html、index.js 现在我们看 my-app文件夹下的 public/index.html 和 src/index.js 的源码,我们可以在这里编写项目代码,但是注意 public/index.html 是启动http服务器的首页,src/index.js是编译的入口文件,只能叫index这个名字,改别的名字不行(除非你改配置文件,继续往下看)。 利用脚手架工具create-react-ap创建并启动项目后,打开 http://localhost:3000 ,F12查看 网页源码,你会看到 <script type="text/javascript" src="/static/js/bundle.js"></script> 在你的项目my-app你是看不到 /static/js/bundle.js 这个文件路径的,你也没有写配置文件 webpack.config.js 。 http服务器配置, 自动代开浏览器窗口, react, es6语法编译, babel-core, webpack等等这些 你都没下载、配置。其实,这些活,react-scripts 都帮你做了。 我们通过 npm run start 命令启动服, 运行项目。

强大的table组件-antd pro table

試著忘記壹切 提交于 2020-04-17 16:27:48
概述 antd pro table antd pro table 的主要部分 表格显示的配置(绿色框内) 检索的配置(红色框内) 是否显示检索部分 检索的内容是如何生效的 工具栏的配置(黄色框内) 表格操作信息(蓝色框内) 概述 如果用 react 开发前端, 建议基于 antd pro 来开发, antd pro 是 antd 的增强版, antd 是组件库, antd pro 则是前端框架, 基于 antd pro, 创建工程时不用再考虑: 路由的设置, 以及和菜单的联动 面包屑和路由的联动 发布打包的方法 工程 lint 后端 API 访问方式 页面状态的管理 … … 总之, 对于管理类型的应用, 基于 antd pro, 可以更多的关注自己的业务, 而不用在工程的管理上花费多余的时间. 在 antd pro 的官网上, 有它的使用方式, 这里主要介绍 antd pro 中的一个组件 antd pro table 的使用 antd pro table antd pro 中的大部分组件来自于 antd , 而 antd pro table 则是基于 antd 的 table 组件再封装了一层, 熟练使用 antd pro table, 能够覆盖大部分增删改查业务的需要, 关键是只需要极少的配置, 就能得到一个完善的表格. antd pro table 的主要部分 如下图:

React实现新闻网站--使用动态路由获取不同列表内容

瘦欲@ 提交于 2020-04-17 08:24:39
【推荐阅读】微服务还能火多久?>>> 效果演示 以下是核心代码 src/index.js import React,{Component} from 'react' ; import ReactDom from 'react-dom' ; import { Layout } from 'antd' ; import 'antd/dist/antd.css' ; import './style.css' ; import AppHeader from './components/AppHeader/' ; import {BrowserRouter,Route,Switch} from 'react-router-dom' ; import Detail from './containers/Detail/' ; import PageList from './containers/List/' ; const { Header, Footer, Content } = Layout; class App extends Component{ render(){ return ( <BrowserRouter> <Layout style={{minWidth:1200,height:'100%'}}> <Header className="header"><AppHeader/><

React实现新闻网站--详情页面的制作

馋奶兔 提交于 2020-04-17 08:24:22
【推荐阅读】微服务还能火多久?>>> 效果演示 核心代码: src/index.js import React,{Component} from 'react' ; import ReactDom from 'react-dom' ; import { Layout } from 'antd' ; import 'antd/dist/antd.css' ; import './style.css' ; import AppHeader from './components/AppHeader/' ; import {BrowserRouter,Route,Switch} from 'react-router-dom' ; import Detail from './containers/Detail/' ; import PageList from './containers/List/' ; const { Header, Footer, Content } = Layout; class App extends Component{ render(){ return ( <BrowserRouter> <Layout style={{minWidth:1200,height:'100%'}}> <Header className="header"><AppHeader/><

VUE课程---1、VUE课程介绍

假装没事ソ 提交于 2020-04-16 11:30:30
【推荐阅读】微服务还能火多久?>>> VUE课程---1、VUE课程介绍 一、总结 一句话总结: vue.js是目前前端最火的框架,不仅可以开发网站,还可以开发移动app,插件和对应的UI库也都非常多 1、vue特点? 双向数据绑定:用户不在需要操作dom 虚拟dom:提高渲染性能 组件化开发:便于组件管理和复用,提高开发效率 2、vue与其它前端JS框架的关联? vue借鉴angular 的模板和数据绑定技术 vue借鉴react 的组件化和虚拟 DOM 技术 3、Vue扩展插件? Vue扩展插件很多,有vue-cli、axios、vue-router、vuex等vue全家桶,也有vue-lazyload、vue-scroller等组件库,也有Quasar等UI组件库 vue- cli: vue 脚手架 vue - resource(axios): ajax 请求 vue - router: 路 由 vuex: 状态管理 vue - lazyload: 图片懒加载 vue - scroller: 页面滑动相关 Quasar:vue ui组件库 二、VUE课程介绍 博客对应课程的视频位置: 1 <! DOCTYPE html > 2 < html lang ="en" > 3 < head > 4 < meta charset ="UTF-8" > 5 < title > 1

React新闻网站--Header组件拆分及样式布局

六月ゝ 毕业季﹏ 提交于 2020-04-16 07:49:46
【推荐阅读】微服务还能火多久?>>> 先放图,一个头部组件 index.js import React,{Component} from 'react' ; import ReactDom from 'react-dom' ; import { Layout } from 'antd' ; import 'antd/dist/antd.css' ; import './style.css' ; import AppHeader from './components/AppHeader/' ; const { Header, Footer, Content } = Layout; class App extends Component{ render(){ return ( <Layout style={{minWidth:1200}}> <Header className="header"><AppHeader/></Header> <Content className="content">Content</Content> <Footer className="footer">Footer</Footer> </Layout> ) } } ReactDom.render( <App/>,document.getElementById('root')); style.css

React Class功能与Hooks等效项

北城余情 提交于 2020-04-16 07:27:24
【推荐阅读】微服务还能火多久?>>> React Class功能与Hooks等效项 https://medium.com/soluto-engineering/react-class-features-vs-hooks-equivalents-745368dafdb3 I gave a talk during a recent meetup at Soluto HQ — Intro to React Hooks. While preparing for the presentation, I fell completely in love with Hooks. Although I was skeptical at first glance, I quickly realized how easy it is to use them and how they make perfect sense. You can really tell how much thought was put into the API and how it solves real life problems. You can find a video of my talk attached to this post (Hebrew only… Sorry!). In my talk I

React 表单与事件 简单演示

浪子不回头ぞ 提交于 2020-04-15 17:06:35
【推荐阅读】微服务还能火多久?>>> import React, { Component } from 'react' ; import ReactDOM from 'react-dom' ; import './index.css' ; import * as serviceWorker from './serviceWorker' ; class MyInput extends Component{ constructor(props){ super(props); this .state= { text: '请输入内容' } this .textFn= this .textFn.bind( this ); } textFn(e){ this .setState({ text:e.target.value }) } render(){ return ( <div> <input type="text" onChange={ this .textFn} placeholder={ this .state.text}/> <p>{ this .state.text}</p> </div> ) } } ReactDOM.render( <div> <MyInput /> </div>, document.getElementById('example' ) );

React Refs 简单演示

心不动则不痛 提交于 2020-04-15 16:57:07
【推荐阅读】微服务还能火多久?>>> React 支持一种非常特殊的属性 Ref ,可以用来绑定到 render() 输出的任何组件上 import React, { Component } from 'react' ; import ReactDOM from 'react-dom' ; import './index.css' ; import * as serviceWorker from './serviceWorker' ; class Focus extends Component{ constructor(props){ super(props); this .focusFn= this .focusFn.bind( this ); } focusFn(){ this .refs.myInput.focus(); } render(){ return ( <div> <input type="text" ref="myInput" /> <br/> <button onClick={ this .focusFn}>点我</button> </div> ) } } ReactDOM.render( <div> <Focus /> </div>, document.getElementById('example' ) ); serviceWorker.unregister

react前端生成二维码

泄露秘密 提交于 2020-04-15 14:50:02
【推荐阅读】微服务还能火多久?>>> 安装组件: npm install qrcode.react --save   引入组件: import QRCode from 'qrcode.react'; 调用方式: <QRCode value={this.state.qrUrl} //value参数为生成二维码的链接 size={200} //二维码的宽高尺寸 fgColor="#000000" //二维码的颜色 /> 来源: oschina 链接: https://my.oschina.net/u/4262067/blog/3235556