create-react-app相關(guān)配置

1.命令行安裝create-react-app

全局安裝:yarn global add create-react-app

2.創(chuàng)建創(chuàng)建一個空項目

create-react-app appname ,這里注意應用名字不能包含大寫字母

3.進入項目,會發(fā)現(xiàn)項目文件很少,這是為什么呢,因為默認會不顯示細致的目錄文件,運行以下命令可以打開隱藏的部分,便于把控項目

yarn run eject,現(xiàn)在就可以進行開發(fā)了,現(xiàn)在有一個需求是利用nodejs鏈接mongodb數(shù)據(jù)庫,express做后臺框架,進行前后端開發(fā),需要搭建相應環(huán)境,首先去mongodb官網(wǎng),下載并安裝mongodb

4.安裝express依賴,yarn add express,等待安裝完成

新建server.js,利用express創(chuàng)建一個htttp服務,實現(xiàn)簡單路由控制

var express = require('express');
var app = express();
app.get('/',function(req,res){
    res.send('<h1>hello world</h1>')
})
app.listen('9999',function(err){
    if(!err){
        console.log('server has been start at  port 9999')
    }else{
        console.log(err)
    }
})

這里由于express暫時還不支持import寫法,所以就使用es5的寫法,訪問127.0.0.1:9999/,即可看到hello world,http服務開啟成功,

5.鏈接mongodb數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)的增刪改查

這里需要安裝一個依賴mongoose,來實現(xiàn)nodejs和mongodb的鏈接,yarn add mongoose,依賴安裝成功之后,引入mongoose模塊,鏈接nodejs和mongodb,更改的server.js代碼如下

const express = require('express');
const mongoose = require('mongoose');
mongoose.connect('mongodb://127.0.0.1:27017/immoc');
mongoose.connection.on('connected',function(err){
    if(!err){
        console.log('mongodb connected')
    }else{
        console.log(err)
    }
})
const app = express();
app.get('/',function(req,res){
    res.send('<h1>hello world</h1>')
})
app.listen('9999',function(err){
    if(!err){
        console.log('server has been start at  port 9999')
    }else{
        console.log(err)
    }
})

控臺輸出正確,連接正常

6.鏈接一個集合(數(shù)據(jù)庫的概念),并定義文檔模型(表的概念)model,接著定義數(shù)據(jù)結(jié)構(gòu)(字段)Schema

const express = require('express');
const mongoose = require('mongoose');
mongoose.connect('mongodb://127.0.0.1:27017/immoc');
mongoose.connection.on('connected',function(err){
    if(!err){
        console.log('mongodb connected')
    }else{
        console.log(err)
    }
})

const User =  mongoose.model('user',new mongoose.Schema({
    name : {type:String,require:true},
    age : {type:Number,require:true}
}))
User.create({
    name:'coldbreath',
    age:18
},function(err,doc){
    if(!err){
        console.log(doc)
    }else{
        console.log(err)
    }
})

const app = express();
app.get('/',function(req,res){
    res.send('<h1>hello world</h1>')
})
app.get('/data',function(req,res){
    User.find({},function(err,doc){
        if(!err){
            res.json(doc)
        }else{
            console.log(err)
        }
    })
})
app.listen('9999',function(err){
    if(!err){
        console.log('server has been start at  port 9999')
    }else{
        console.log(err)
    }
})

7.對數(shù)據(jù)庫進行操作,增刪改查,這里就不多加贅述,可以點擊下這里,用法很靈活,多樣化

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容