美文网首页
webpack学习记录03

webpack学习记录03

作者: 33d8e4ec2cc9 | 来源:发表于2017-06-29 22:11 被阅读22次

要说现在最火的前端框架,大概就是react了,能火成这样,一定是有道理的,我觉得不管是好用,还是不好用,作为一个做web的程序员,至少还是要去了解一下的。今天就稍微介绍一下,react的一些基本思路和语法。

介绍语法之前,先说下我对这个东西的感受。

<!DOCTYPE html>
<html>
  <head>
    <script src="../build/react.js"></script>
    <script src="../build/react-dom.js"></script>
    <script src="../build/browser.min.js"></script>
  </head>
  <body>
    <div id="example"></div>
    <script type="text/babel">
      // ** Our code goes here! **
    </script>
  </body>
</html>
ReactDOM.render(
  <h1>Hello, world!</h1>,
  document.getElementById('example')
);

第一眼看上去,嗯。。好好的html和javascript不写,写成这样是要干什么,有什么意义?
很多人应该和我一样,开始看react语法的时候是抗拒的。直到我捣鼓了一个demo出来之后,我才搞清楚作者的意图,再回去看语法的时候觉得茅塞顿开。

先问几个问题

  1. 当我们打开一个复杂的html文件,你有活下去的勇气去直视吗?
  2. 遇到这种无法直视的文件,我们一般是怎么处理,比如Rails框架,为什么要分为MVC三个部分?
  3. 所有的东西都放在一个文件里,除了电脑,有谁能看懂?

这就是我对于react的第一感受,发挥你自己的想象力,去吧一个页面拆成一个一个子组件,这应该就是react最大的魅力

html标签一共有几种?我也不知道,大概几十种吧。一个静态的页面,大段大段的html,你们有没有想过,有一种语法,能像积木一样,把一堆html标签,变成一个你自己创造的‘标签’,而且你还能帮它起名字, 通过这个你自己造的‘标签’,来换2个div? 4个span? 甚至里面还有另一组你造的标签,于是整个html就像套娃一样,一层一层的

import React, {
  Component
} from 'react';
import {
  Router,
  Route,
  IndexRoute,
  hashHistory
} from 'react-router';
import Home from './components/home/Home';
import AboutUs from './components/AboutUs'
import Layout from './Layout'

class App extends Component {
  render() {
    return (
      <div>
        <Layout />
        <Router history={hashHistory}>
          <Route path="/" component={Home}/>
          <Route path="/about_us" component={AboutUs}/>
        </Router>
      </div>
    );
  }
}

export default App;

看到那个layout标签了不,这就是我自己造的,用来表示页面公共部分的一个标签,也表明了这个标签其他页面可能也是要用的。

layout里面是什么内容呢

import React, { Component } from 'react';
import {Navbar, Nav, NavItem, Button, MenuItem, NavDropdown} from 'react-bootstrap';

class Layout extends Component {
    render () {
     return(
          <Navbar inverse collapseOnSelect style={{margin: 0}}>
            <Navbar.Header>
              <Navbar.Brand>
                <a href="#">啦啦啦</a>
              </Navbar.Brand>
              <Navbar.Toggle />
            </Navbar.Header>
            <Navbar.Collapse>
              <Nav pullRight>
                <NavItem eventKey={1} href="#">目标人群</NavItem>
                <NavItem eventKey={2} href="#">关于我们</NavItem>
              </Nav>
            </Navbar.Collapse>
          </Navbar>
     ) 
     
    }
} 

export default Layout

我们都知道写一个顶部的菜单其实需要的html代码的量是非常大的,然而你看这个文件,用了react-bootstrap之后,既表意,代码量也少,你当然也可以继续追溯Navbar标签后面是什么,不过我想看到这里,大家应该明白react的设计思路是什么了

本期就到这里,下期会介绍一下react的使用方法

相关文章

  • webpack学习记录03

    要说现在最火的前端框架,大概就是react了,能火成这样,一定是有道理的,我觉得不管是好用,还是不好用,作为一个做...

  • 初探webpack小记

    webpack学习记录 安装webpack 全局安装webpack:npm install webpack -g之...

  • 前端工程化之webpack学习记录

    本文是本人正式开始学习webpack的记录文档,时间:2020-05-16,webpack版本:"webpack"...

  • webpack学习记录

    学习链接: https://doc.webpack-china.org/concepts/webpack处理css...

  • 学习webpack记录

    现在在用JavaScript练习算法题,用到大量ES6语法特性,在补充ES6语言基础的同时,实在觉得nodejs内...

  • webpack学习记录

    先从看文档开始学习,认识,学习的是webpack v4.41.0传送门:https://www.webpackjs...

  • Webpack学习记录

    注:“_dirname”是node.js的一个全局变量,指向当前执行脚本所在的目录。 几个核心概念。 Entry:...

  • 2018-06-17 webpack—js打包

    记录webpack打包学习 我现在跟着视频教程学习webpack基础打包,在最开始就遇到了问题,首先教程webpa...

  • webpack学习记录(起步)

    学习的首要在于形成闭环,所以虽然只是很累赘的复述,但也请认真对待吧~ webpack用于打包编译js模块,这样说很...

  • webpack学习记录01

    entry和output 新建一个文件夹, 进去之后安装了webpack, 和webpack-dev-server...

网友评论

      本文标题:webpack学习记录03

      本文链接:https://www.haomeiwen.com/subject/lapvcxtx.html