成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

React 實(shí)踐項(xiàng)目 (一)

zombieda / 1603人閱讀

摘要:在上已經(jīng)有接近的數(shù)了,是目前最熱門的前端框架。而我學(xué)習(xí)也有一段時(shí)間了,現(xiàn)在就開始用進(jìn)行實(shí)戰(zhàn)文章地址項(xiàng)目代碼地址首先,我們開始構(gòu)建一個(gè)基礎(chǔ)項(xiàng)目。下篇教程會(huì)加入進(jìn)行登錄注冊(cè)操作項(xiàng)目代碼地址版項(xiàng)目代碼地址相應(yīng)后端項(xiàng)目代碼地址

React在Github上已經(jīng)有接近70000的 star 數(shù)了,是目前最熱門的前端框架。而我學(xué)習(xí)React也有一段時(shí)間了,現(xiàn)在就開始用 React+Redux 進(jìn)行實(shí)戰(zhàn)!

文章地址:https://github.com/DigAg/diga...
項(xiàng)目代碼地址:https://github.com/DigAg/diga...

首先,我們開始構(gòu)建一個(gè)基礎(chǔ)項(xiàng)目。

我們使用create-react-app創(chuàng)建項(xiàng)目,不需要安裝或配置W??ebpack或Babel等工具。它們被預(yù)先配置和隱藏,以便我們可以專注于代碼。

在本地全局安裝create-react-app(需要安裝Node.js且版本 >= 6,也可使用 yarn 代替 npm)

npm install -g create-react-app

創(chuàng)建項(xiàng)目

create-react-app digag 
cd digag 

檢查是否成功創(chuàng)建digag文件夾與相關(guān)文件

digag
├── README.md
├── node_modules
├── package.json
├── .gitignore
├── public
│   └── favicon.ico
│   └── index.html
│   └── manifest.json
└── src
    └── App.css
    └── App.js
    └── App.test.js
    └── index.css
    └── index.js
    └── logo.svg
    └── registerServiceWorker.js

在開發(fā)模式下運(yùn)行應(yīng)用程序,訪問localhost:3000在瀏覽器中查看。

npm start 
or 
yarn start
這樣我們就成功創(chuàng)建好一個(gè)可以直接運(yùn)行的React項(xiàng)目了!

接下來,開始編寫代碼了!

首先我們打開 src 目錄下的 App.js 文件,刪除掉默認(rèn)生成的代碼。輸入以下代碼:

/**
 * Created by Yuicon on 2017/6/25.
 */
import React, { Component } from "react";
import Header from "../../components/Index/Header";
import "./App.css";

export default class App extends Component {

  componentDidMount() {
    console.log(this.props.users)
  }

  render(){
    return(
      
1adasdasdasdasdasd1adasdasdasdasdasd1adasdasdasdasdasd1adasdasdasdasdasd
21adasdasdasdasdasd1adasdasdasdasdasd1adasdasdasdasdasd1adasdasdasdasdasd1adasdasdasdasdasd
31adasdasdasdasdasd1adasdasdasdasdasd1adasdasdasdasdasd1adasdasdasdasdasd1adasdasdasdasdasd
) } }

同樣,編輯 App.css 文件:

html {
  font-size: 12px;
  font-family: -apple-system,PingFang SC,Hiragino Sans GB,Arial,Microsoft YaHei,Helvetica Neue,sans-serif;
  text-rendering: optimizeLegibility;
  background-color: #f4f5f5;
  color: #333;
  word-break: break-all;
}

.App {
  text-align: center;
}

.App-header {
  position: relative;
  height: 5rem;
}

.main-header {
  background: #fff;
  border-bottom: 1px solid #f1f1f1;
  color: #909090;
  height: 5rem;
  z-index: 250;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  transition: all .2s;
}

.main-header .visible {
  transform: translateZ(0);
}

.container {
  display: flex;
  align-items: center;
  height: 100%;
  position: relative;
  width: 100%;
}

.main-header .container {
  max-width: 960px;
  min-width: 960px;
  margin: auto;
}

.logo {
  margin-right: 2rem;
}

.logo-img {
  border-style: none;
}

.nav-menu ul{
  background-color: white;
}

.nav-menu ul li{
  font-size: 1.33rem;
}

.nav-menu ul li:hover{
  border-bottom: 0 solid white !important;
  background-color: white !important;
}

.nav-menu button{
  margin-left: 0 !important;
  font-weight: 500;
  font-size: 1.3rem;
}

.contribute {

}

.contribute:after{
  content: "|";
  position: absolute;
  top: 24px;
  left: 100%;
  color: hsla(0,0%,59%,.4);
}

.login-btn {

}

.login-btn:after {
  content: "B7";
  margin: 0 .4rem;
}

.register-dialog {
  padding: 2rem;
  width: 26.5rem !important;
  max-width: 100%;
  font-size: 1.167rem;
  box-sizing: border-box;
}

.App-body {
  position: relative;
  margin: 0 auto;
  width: 100%;
  max-width: 960px;
  height: 100vh;
}

.welcome-view {
  position: relative;
  display: flex;
  justify-content: space-between;
  margin-top: 1.767rem;
}

.category-nav {
  background-color: #db1f00;
  width: 140px;
  position: fixed;
  top: 6.66rem;
}

.main {
  background-color: #08c6a7;
  width: 560px;
  margin-left: 13rem;
}

.sidebar {
  background-color: #e3e001;
  width: 19.2rem;
  box-sizing: border-box;
}

可能已經(jīng)有同學(xué)注意到了,我們?cè)?App.js 里導(dǎo)入了一個(gè)目前還不存在的組件?,F(xiàn)在,我們來創(chuàng)建它:

首先,創(chuàng)建 src/components/Index 目錄,在該目錄下創(chuàng)建 Header.js 。

digag
├── README.md
├── node_modules
├── package.json
├── .gitignore
├── public
│   └── favicon.ico
│   └── index.html
│   └── manifest.json
└── src
    └── components
        └── Index
            └── Header.js
    └── App.css
    └── App.js
    └── App.test.js
    └── index.css
    └── index.js
    └── logo.svg
    └── registerServiceWorker.js

編輯 Header.js 文件

/**
 * Created by Yuicon on 2017/6/25.
 */
import React, {Component} from "react";
import {Button, Input, Menu} from "element-react";

export default class Header extends Component {

  constructor(props) {
    super(props);
    this.state = {
      searchInput: "",
    };
  }

  handleSelect = (index) => {
    console.log(index);
  };

  handleIconClick = () => {
    console.log("handleIconClick", this.state.searchInput);
  };

  render() {
    return (
      
首頁 專欄 收藏集 發(fā)現(xiàn) 標(biāo)簽 this.setState({searchInput: value})} />
) } }

我們?cè)?Header.js 文件里導(dǎo)入了 element-react UI庫的組件, 所以需要在 package.json 文件里添加依賴。

//省略部分代碼
"dependencies": {
     "element-react": "^1.0.11",
     "element-theme-default": "^1.3.7"
    },

運(yùn)行命令:

npm install 
or 
yarn install

根據(jù) element-react 文檔,在 index.js 文件中導(dǎo)入樣式

import "element-theme-default";
//省略部分代碼

現(xiàn)在再重新運(yùn)行項(xiàng)目,我們可以看到這樣的頁面:

是的沒錯(cuò),這就是編寫一個(gè)屬于自己的掘金教程。

下篇教程會(huì)加入 Redux 進(jìn)行登錄注冊(cè)操作

項(xiàng)目代碼地址:https://github.com/DigAg/diga...
vue2版項(xiàng)目代碼地址:https://github.com/DigAg/diga...
相應(yīng)后端項(xiàng)目代碼地址:https://github.com/DigAg/diga...

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/50922.html

相關(guān)文章

  • React項(xiàng)目實(shí)踐系列

    摘要:在此我們選用用友的公共靜態(tài)資源庫。因此打算建立遠(yuǎn)程的其實(shí)還有個(gè)關(guān)鍵是我使用用友配的電腦開發(fā),在本地部署的話電腦配置。。。不過此步驟我們也可以省略了,用友的大前端技術(shù)團(tuán)隊(duì)提供了平臺(tái)。 數(shù)據(jù)分析平臺(tái)-實(shí)踐系列一 項(xiàng)目創(chuàng)建于2018年1月底,到現(xiàn)在已經(jīng)接近半年,在此寫下半年來項(xiàng)目的實(shí)踐過程以及自己對(duì)前端的學(xué)習(xí)與體悟。 技術(shù)選型 框架: React 路由: React-Router 4 狀態(tài)管...

    DC_er 評(píng)論0 收藏0
  • React 實(shí)踐項(xiàng)目 (四)

    摘要:在上已經(jīng)有接近的數(shù)了,是目前最熱門的前端框架。為了檢驗(yàn)效果當(dāng)然是選擇部署到服務(wù)器。下篇文章將會(huì)介紹利用的鏡像部署應(yīng)用。完整項(xiàng)目代碼地址 React在Github上已經(jīng)有接近70000的 star 數(shù)了,是目前最熱門的前端框架。而我學(xué)習(xí)React也有一段時(shí)間了,現(xiàn)在就開始用 React+Redux 進(jìn)行實(shí)戰(zhàn)! 上回說到使用Redux-saga 管理 Redux 應(yīng)用異步操作,應(yīng)用還是只有...

    AaronYuan 評(píng)論0 收藏0
  • 前端每周清單半年盤點(diǎn)之 ReactReactNative 篇

    摘要:前端每周清單半年盤點(diǎn)之與篇前端每周清單專注前端領(lǐng)域內(nèi)容,以對(duì)外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點(diǎn)分為新聞熱點(diǎn)開發(fā)教程工程實(shí)踐深度閱讀開源項(xiàng)目巔峰人生等欄目。與求同存異近日,宣布將的構(gòu)建工具由遷移到,引發(fā)了很多開發(fā)者的討論。 前端每周清單半年盤點(diǎn)之 React 與 ReactNative 篇 前端每周清單專注前端領(lǐng)域內(nèi)容,以對(duì)外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點(diǎn);分為...

    Barry_Ng 評(píng)論0 收藏0
  • 數(shù)據(jù)驅(qū)動(dòng)模式借助react實(shí)踐探索

    摘要:之前談到過很多次數(shù)據(jù)驅(qū)動(dòng)的理解,這次通過實(shí)際項(xiàng)目檢驗(yàn)了一下自己的想法。對(duì)于數(shù)據(jù)驅(qū)動(dòng)這種模式,至少從數(shù)據(jù)層,可以規(guī)避,做一層數(shù)據(jù)變化的效驗(yàn)這個(gè)和寫服務(wù)端單側(cè)差不多。數(shù)據(jù)驅(qū)動(dòng)和有點(diǎn)類似,只是借用在單頁面上實(shí)現(xiàn)了。 之前談到過很多次數(shù)據(jù)驅(qū)動(dòng)的理解,這次通過實(shí)際項(xiàng)目檢驗(yàn)了一下自己的想法。 相關(guān)文件 《前端數(shù)據(jù)驅(qū)動(dòng)的價(jià)值》 《前端數(shù)據(jù)驅(qū)動(dòng)的陷阱》 項(xiàng)目詳設(shè) 詳設(shè)的重要性 對(duì)于復(fù)雜一點(diǎn)的項(xiàng)目,...

    jone5679 評(píng)論0 收藏0
  • 前端清單第 27 期:React Patent License 回復(fù),Shopify WebVR 購

    摘要:新聞熱點(diǎn)國內(nèi)國外,前端最新動(dòng)態(tài)就開源許可證風(fēng)波進(jìn)行回復(fù)數(shù)周前,基金會(huì)決定禁止旗下項(xiàng)目使用,因?yàn)槠湓跇?biāo)準(zhǔn)的許可證之外添加了專利聲明此舉引發(fā)了社區(qū)的廣泛討論,希望能夠更新其開源許可證。 showImg(https://segmentfault.com/img/remote/1460000010777089); 前端每周清單第 27 期:React Patent License 回復(fù),Sho...

    jeffrey_up 評(píng)論0 收藏0
  • React 實(shí)踐項(xiàng)目 (五)Docker Nginx 部署 React

    摘要:在上已經(jīng)有接近的數(shù)了,是目前最熱門的前端框架。將整個(gè)應(yīng)用打包發(fā)布,自動(dòng)試用進(jìn)行壓縮與優(yōu)化。毫無疑問,這些重?fù)?dān)都將壓在企業(yè)開發(fā)人員身上團(tuán)隊(duì)之間如何高效協(xié)調(diào),快速交付產(chǎn)品,快速部署應(yīng)用,以及滿足企業(yè)業(yè)務(wù)需求,是開發(fā)人員亟需解決的問題。 React在Github上已經(jīng)有接近70000的 star 數(shù)了,是目前最熱門的前端框架。而我學(xué)習(xí)React也有一段時(shí)間了,現(xiàn)在就開始用 React+Red...

    EscapedDog 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<