最近呢手頭的活也不是特別多,所以就靜下心來看了看如何使用nodejs搭建一個簡易的服務器,話不多說直接進入正題
1.首先你的自己搭建node環境,怎麼搭建我就不多說的,百度教程一大堆
2.搭建好了之後新建一個文件夾,在新建一個index.js文件,內容如下:
// 引入需要的包,注意在node中使用的是requireJs,所以不要使用import這種語法,不會被識別
const http=require('http');
const url=require('url');
// 創建服務器
http.createServer(function(res.req){
var pathname=url.parse(req.url).pathname;// 獲取請求的路徑
res.writeHead(200,{"Content-Type":'text/plain'}); // 設置響應頭
res.write('Hello Node'); // 響應內容
res.end();
}).listen(8000);// 端口
在文件夾上shift+右鍵→打開命令窗口→輸入命令node index.js,打開瀏覽器訪問8000端口,就會看到對應的響應內容
可以根據pathname的不同響應不同的內容或進行不同的操作
此時你的node服務就已經啓動了
3.如何連接數據庫
一個完整後臺服務必須能夠訪問並且操作數據庫,接下來就是如何利用node訪問數據庫:
首先你的給文件夾安裝npm依賴,在你當前的文件夾下打開命令窗口執行:npm init,然後一路回車就行了
然後安裝mysql的包:npm install mysql --save
然後將原來的代碼改爲:
// 引入需要的包
const http=require('http');
const url=require('url');
const mysql=require('mysql');
// 配置mysql數據庫連接項
const connection=mysql.createConnection({
host:'localhost', // 主機地址,默認localhost port默認3306
user:'root', // mysql數據庫用戶名
password:'123456', // 密碼
database:'testdb', // 數據庫名稱
})
// 連接數據庫
connection.connect();
http.createServer(function(res,req){
var pathname=url.parse(res.url).pathname;
res.writeHead(200,{"Content-Type":'text/plain'});
// 執行數據庫查詢操作
connection.query('SELECT * FROM user',function(err,result){
if(err){
console.log(err);
return;
}
console.log(result);
})
res.write('Hello World');
res.end();
}).listen(8000);
console.log('Server has started');
完成以上代碼後再次在命令行執行node index.js,訪問8000端口,此時命令行會打印數據庫的數據,此時就代表已經成功連接數據庫了
記錄一下最近在公司項目開發中遇到的問題:
表單中的defaultValue和initialValue一樣只接收第一次的賦值,之後的值都不會接收,假如想改變的話:
對於在表單中的組件可以使用this.props.form.setFieldValue來改變對應的值
對於單獨的組件可以使用value={this.state.value}來進行雙向綁定