Suche senden
Hochladen
Node.js從無到有 基本課程
•
44 gefällt mir
•
23,370 views
Simon Su
Folgen
Technologie
Melden
Teilen
Melden
Teilen
1 von 39
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
NodeJS基礎教學&簡介
NodeJS基礎教學&簡介
GO LL
ミクシィ 21卒向け Android研修
ミクシィ 21卒向け Android研修
akkuma
今さら聞けないDiとspring
今さら聞けないDiとspring
土岐 孝平
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
認証の標準的な方法は分かった。では認可はどう管理するんだい? #cmdevio
認証の標準的な方法は分かった。では認可はどう管理するんだい? #cmdevio
都元ダイスケ Miyamoto
クラウド時代だからSpring-Retryフレームワーク
クラウド時代だからSpring-Retryフレームワーク
Y Watanabe
FridaによるAndroidアプリの動的解析とフッキングの基礎
FridaによるAndroidアプリの動的解析とフッキングの基礎
ken_kitahara
これから始めるSpringのwebアプリケーション
これから始めるSpringのwebアプリケーション
土岐 孝平
Empfohlen
NodeJS基礎教學&簡介
NodeJS基礎教學&簡介
GO LL
ミクシィ 21卒向け Android研修
ミクシィ 21卒向け Android研修
akkuma
今さら聞けないDiとspring
今さら聞けないDiとspring
土岐 孝平
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
認証の標準的な方法は分かった。では認可はどう管理するんだい? #cmdevio
認証の標準的な方法は分かった。では認可はどう管理するんだい? #cmdevio
都元ダイスケ Miyamoto
クラウド時代だからSpring-Retryフレームワーク
クラウド時代だからSpring-Retryフレームワーク
Y Watanabe
FridaによるAndroidアプリの動的解析とフッキングの基礎
FridaによるAndroidアプリの動的解析とフッキングの基礎
ken_kitahara
これから始めるSpringのwebアプリケーション
これから始めるSpringのwebアプリケーション
土岐 孝平
RxSwift
RxSwift
Kristaps Grinbergs
Goss入門
Goss入門
ShuyaMotouchi1
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
Zynq+PyCoRAM(+Debian)入門
Zynq+PyCoRAM(+Debian)入門
Shinya Takamaeda-Y
pgGeocoderのご紹介
pgGeocoderのご紹介
Ko Nagase
Springを使ったwebアプリにリファクタリングしよう
Springを使ったwebアプリにリファクタリングしよう
土岐 孝平
社内Java8勉強会 ラムダ式とストリームAPI
社内Java8勉強会 ラムダ式とストリームAPI
Akihiro Ikezoe
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
土岐 孝平
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜
LINE Corporation
Spring native について
Spring native について
Takamasa Mitsuji
いつやるの?Git入門
いつやるの?Git入門
Masakazu Matsushita
おすすめVimプラグインまとめ
おすすめVimプラグインまとめ
Shun Iwase
ROS 2 Client Library for E^2
ROS 2 Client Library for E^2
Hideki Takase
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
Takafumi ONAKA
C#/WPFで作るデスクトップマスコット入門
C#/WPFで作るデスクトップマスコット入門
Fujikido
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
Kent Ohashi
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
Kouhei Sutou
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
realpathキャッシュと OPcacheの面倒すぎる関係
realpathキャッシュと OPcacheの面倒すぎる関係
Yoshio Hanawa
Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹
wantingj
Linux network monitoring hands-on pratice
Linux network monitoring hands-on pratice
Kenny (netman)
Weitere ähnliche Inhalte
Was ist angesagt?
RxSwift
RxSwift
Kristaps Grinbergs
Goss入門
Goss入門
ShuyaMotouchi1
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
Zynq+PyCoRAM(+Debian)入門
Zynq+PyCoRAM(+Debian)入門
Shinya Takamaeda-Y
pgGeocoderのご紹介
pgGeocoderのご紹介
Ko Nagase
Springを使ったwebアプリにリファクタリングしよう
Springを使ったwebアプリにリファクタリングしよう
土岐 孝平
社内Java8勉強会 ラムダ式とストリームAPI
社内Java8勉強会 ラムダ式とストリームAPI
Akihiro Ikezoe
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
土岐 孝平
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜
LINE Corporation
Spring native について
Spring native について
Takamasa Mitsuji
いつやるの?Git入門
いつやるの?Git入門
Masakazu Matsushita
おすすめVimプラグインまとめ
おすすめVimプラグインまとめ
Shun Iwase
ROS 2 Client Library for E^2
ROS 2 Client Library for E^2
Hideki Takase
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
Takafumi ONAKA
C#/WPFで作るデスクトップマスコット入門
C#/WPFで作るデスクトップマスコット入門
Fujikido
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
Kent Ohashi
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
Kouhei Sutou
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
realpathキャッシュと OPcacheの面倒すぎる関係
realpathキャッシュと OPcacheの面倒すぎる関係
Yoshio Hanawa
Was ist angesagt?
(20)
RxSwift
RxSwift
Goss入門
Goss入門
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
Zynq+PyCoRAM(+Debian)入門
Zynq+PyCoRAM(+Debian)入門
pgGeocoderのご紹介
pgGeocoderのご紹介
Springを使ったwebアプリにリファクタリングしよう
Springを使ったwebアプリにリファクタリングしよう
社内Java8勉強会 ラムダ式とストリームAPI
社内Java8勉強会 ラムダ式とストリームAPI
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜
Spring native について
Spring native について
いつやるの?Git入門
いつやるの?Git入門
おすすめVimプラグインまとめ
おすすめVimプラグインまとめ
ROS 2 Client Library for E^2
ROS 2 Client Library for E^2
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
C#/WPFで作るデスクトップマスコット入門
C#/WPFで作るデスクトップマスコット入門
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
Redisの特徴と活用方法について
Redisの特徴と活用方法について
realpathキャッシュと OPcacheの面倒すぎる関係
realpathキャッシュと OPcacheの面倒すぎる関係
Ähnlich wie Node.js從無到有 基本課程
Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹
wantingj
Linux network monitoring hands-on pratice
Linux network monitoring hands-on pratice
Kenny (netman)
这年头,你只需要懂Node webkit
这年头,你只需要懂Node webkit
LainZQ
快快樂樂學 Angular 2 開發框架
快快樂樂學 Angular 2 開發框架
Will Huang
Nagios的安装部署和与cacti的整合(linuxtone)
Nagios的安装部署和与cacti的整合(linuxtone)
Yiwei Ma
北護樂學程式冬令營 2017
北護樂學程式冬令營 2017
Hamilton Wong
Vic weekly learning_20160504
Vic weekly learning_20160504
LearningTech
Npm node.js的套件管理程式
Npm node.js的套件管理程式
Chuyi Huang
Grunt
Grunt
lylijincheng
2012 php conf slide PIXNET 如何使用 php
2012 php conf slide PIXNET 如何使用 php
ronnywang_tw
Angular 4 新手入門攻略完全制霸
Angular 4 新手入門攻略完全制霸
Will Huang
Apache安装配置mod security
Apache安装配置mod security
Huang Toby
CP 值很高的 Gulp
CP 值很高的 Gulp
Yvonne Yu
以Code igniter為基礎的網頁前端程式設計
以Code igniter為基礎的網頁前端程式設計
Amigo 陳兆祥
Nginx使用和模块开发
Nginx使用和模块开发
qingpiao1983
使用 Load Balancer 與 Redis 部署 LAMP Server 高併發架構 - Global Azure Taiwan 20200425 ...
使用 Load Balancer 與 Redis 部署 LAMP Server 高併發架構 - Global Azure Taiwan 20200425 ...
Laird Cheng
Django development
Django development
loveyudu
Django step0
Django step0
永昇 陳
前端自動化工具
前端自動化工具
國昭 張
Continuous Delivery Workshop with Ansible x GitLab CI (2nd)
Continuous Delivery Workshop with Ansible x GitLab CI (2nd)
Chu-Siang Lai
Ähnlich wie Node.js從無到有 基本課程
(20)
Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹
Linux network monitoring hands-on pratice
Linux network monitoring hands-on pratice
这年头,你只需要懂Node webkit
这年头,你只需要懂Node webkit
快快樂樂學 Angular 2 開發框架
快快樂樂學 Angular 2 開發框架
Nagios的安装部署和与cacti的整合(linuxtone)
Nagios的安装部署和与cacti的整合(linuxtone)
北護樂學程式冬令營 2017
北護樂學程式冬令營 2017
Vic weekly learning_20160504
Vic weekly learning_20160504
Npm node.js的套件管理程式
Npm node.js的套件管理程式
Grunt
Grunt
2012 php conf slide PIXNET 如何使用 php
2012 php conf slide PIXNET 如何使用 php
Angular 4 新手入門攻略完全制霸
Angular 4 新手入門攻略完全制霸
Apache安装配置mod security
Apache安装配置mod security
CP 值很高的 Gulp
CP 值很高的 Gulp
以Code igniter為基礎的網頁前端程式設計
以Code igniter為基礎的網頁前端程式設計
Nginx使用和模块开发
Nginx使用和模块开发
使用 Load Balancer 與 Redis 部署 LAMP Server 高併發架構 - Global Azure Taiwan 20200425 ...
使用 Load Balancer 與 Redis 部署 LAMP Server 高併發架構 - Global Azure Taiwan 20200425 ...
Django development
Django development
Django step0
Django step0
前端自動化工具
前端自動化工具
Continuous Delivery Workshop with Ansible x GitLab CI (2nd)
Continuous Delivery Workshop with Ansible x GitLab CI (2nd)
Mehr von Simon Su
Kubernetes Basic Operation
Kubernetes Basic Operation
Simon Su
Google IoT Core 初體驗
Google IoT Core 初體驗
Simon Su
JSDC 2017 - 使用google cloud 從雲到端,動手刻個IoT
JSDC 2017 - 使用google cloud 從雲到端,動手刻個IoT
Simon Su
GCPUG.TW meetup #28 - GKE上運作您的k8s服務
GCPUG.TW meetup #28 - GKE上運作您的k8s服務
Simon Su
Google Cloud Platform Special Training
Google Cloud Platform Special Training
Simon Su
GCE Windows Serial Console Usage Guide
GCE Windows Serial Console Usage Guide
Simon Su
GCPNext17' Extend 開始GCP了嗎?
GCPNext17' Extend 開始GCP了嗎?
Simon Su
Try Cloud Spanner
Try Cloud Spanner
Simon Su
Google Cloud Monitoring
Google Cloud Monitoring
Simon Su
Google Cloud Computing compares GCE, GAE and GKE
Google Cloud Computing compares GCE, GAE and GKE
Simon Su
JCConf 2016 - Google Dataflow 小試
JCConf 2016 - Google Dataflow 小試
Simon Su
JCConf 2016 - Dataflow Workshop Labs
JCConf 2016 - Dataflow Workshop Labs
Simon Su
JCConf2016 - Dataflow Workshop Setup
JCConf2016 - Dataflow Workshop Setup
Simon Su
GCPUG meetup 201610 - Dataflow Introduction
GCPUG meetup 201610 - Dataflow Introduction
Simon Su
Brocade - Stingray Application Firewall
Brocade - Stingray Application Firewall
Simon Su
使用 Raspberry pi + fluentd + gcp cloud logging, big query 做iot 資料搜集與分析
使用 Raspberry pi + fluentd + gcp cloud logging, big query 做iot 資料搜集與分析
Simon Su
Docker in Action
Docker in Action
Simon Su
Google I/O 2016 Recap - Google Cloud Platform News Update
Google I/O 2016 Recap - Google Cloud Platform News Update
Simon Su
IThome DevOps Summit - IoT、docker與DevOps
IThome DevOps Summit - IoT、docker與DevOps
Simon Su
Google Cloud Platform Introduction - 2016Q3
Google Cloud Platform Introduction - 2016Q3
Simon Su
Mehr von Simon Su
(20)
Kubernetes Basic Operation
Kubernetes Basic Operation
Google IoT Core 初體驗
Google IoT Core 初體驗
JSDC 2017 - 使用google cloud 從雲到端,動手刻個IoT
JSDC 2017 - 使用google cloud 從雲到端,動手刻個IoT
GCPUG.TW meetup #28 - GKE上運作您的k8s服務
GCPUG.TW meetup #28 - GKE上運作您的k8s服務
Google Cloud Platform Special Training
Google Cloud Platform Special Training
GCE Windows Serial Console Usage Guide
GCE Windows Serial Console Usage Guide
GCPNext17' Extend 開始GCP了嗎?
GCPNext17' Extend 開始GCP了嗎?
Try Cloud Spanner
Try Cloud Spanner
Google Cloud Monitoring
Google Cloud Monitoring
Google Cloud Computing compares GCE, GAE and GKE
Google Cloud Computing compares GCE, GAE and GKE
JCConf 2016 - Google Dataflow 小試
JCConf 2016 - Google Dataflow 小試
JCConf 2016 - Dataflow Workshop Labs
JCConf 2016 - Dataflow Workshop Labs
JCConf2016 - Dataflow Workshop Setup
JCConf2016 - Dataflow Workshop Setup
GCPUG meetup 201610 - Dataflow Introduction
GCPUG meetup 201610 - Dataflow Introduction
Brocade - Stingray Application Firewall
Brocade - Stingray Application Firewall
使用 Raspberry pi + fluentd + gcp cloud logging, big query 做iot 資料搜集與分析
使用 Raspberry pi + fluentd + gcp cloud logging, big query 做iot 資料搜集與分析
Docker in Action
Docker in Action
Google I/O 2016 Recap - Google Cloud Platform News Update
Google I/O 2016 Recap - Google Cloud Platform News Update
IThome DevOps Summit - IoT、docker與DevOps
IThome DevOps Summit - IoT、docker與DevOps
Google Cloud Platform Introduction - 2016Q3
Google Cloud Platform Introduction - 2016Q3
Node.js從無到有 基本課程
1.
Node.js從無到有 MiCloud Team Simon https://sites.google.com/a/mitac.com.tw/training/
2.
Prepare Node.js: http://nodejs.org Github: https://githib.com IDE ●
vi / vim ● Sublime text: http://www.sublimetext.com/ ● Eclipse based IDE: ○ Apatana: http://www.aptana.com/ ○ Titanium: http://www.appcelerator.com/platform/titanium- studio/ ● Cloud IDE: ○ cloud9: https://c9.io
3.
Objective ● 簡介Node.js ● 從安裝開始 ●
第一個Node.js程式 ● 基礎介紹 ● NPM(Node.js Package Management) ● Node.js的MVC - Express + EJS
4.
Node.js簡介
5.
一鍵安裝 http://nodejs.org/download/
6.
進階安裝 ● Download source
code ● Install tar -zxf node-vx.x.x.tar.gz cd node-vx.x.x ./configure --prefix=/opt/node make sudo make install
7.
● Github: ● Installation: curl
https://raw.github.com/creationix/nvm/master/install.sh | sh nvm install 0.10 ● Switch Node.js version: nvm use 0.10 NVM安裝 參考:http://opennodes.arecord.us/md/BasicNodeJS.md
8.
檢視是否安裝成功 ● node -v ●
npm -v ● which node (for linux) # node > console.log(‘Hello Word’); Hello Word > Node.js直譯模式
9.
第一個Node.js程式 var http =
require('http'); /** * 透過http模組啟動web server服務 */ http.createServer(function (req, res) { //設定回應為text文件,並回應Hello World res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello Worldn'); }).listen(1337, '127.0.0.1'); //設定服務聽取127.0.0.1位置的1337 port
10.
Lab 1 -
Hello World app ● 建立一個Hello World網站
11.
基礎介紹 ● 基礎語法介紹 ● 基本模組介紹 ●
JSON
12.
基礎語法 ● 語法使用上同JavaScript ● 差別
- Node.js是Server Side程式語言 ● Assertion Testing ● Buffer ● C/C++ Addons ● Child Processes ● Cluster ● Console ● Crypto ● Debugger ● DNS ● Domain ● Events ● File System ● Globals ● HTTP ● HTTPS ● Modules ● Net ● OS ● Path ● Process ● Punycode ● Query Strings ● Readline ● REPL ● Stream ● String Decoder ● Timers ● TLS/SSL ● TTY ● UDP/Datagram ● URL ● Utilities ● VM ● ZLIB
13.
模組的使用 載入模組 ● var fs
= require(‘fs’); ● var mylib = require(‘./mylib’); 發佈模組 ● exports.fn = function(...){...}
14.
Node.js與環境變數 /* From: http://opennodes.arecord.us/md/NodeJSEnv.md
*/ var param = ''; /** * 關於指令列的接入參數,可以透過process.argv這個變數來讀取 * 而process.argv[0] = node這個指令, * process.argv[1] = 要執行的node.js程式檔名 * 從argv[2]之後的才開始是讀入的參數 */ if ( process.argv[2] ) param = process.argv[2]; if(param != '') console.log(param); else console.log('No input param');
15.
fs module ● var
fs = require(‘fs’) ● fs.readFile(‘path’, callback) ● fs.readFileSync(‘path’) var fs = require('fs') /** * readdirSync function提供同步的資料夾列表, * 回傳值為一個file的陣列 */ var files = fs.readdirSync('.'); for ( i in files ) { console.log(files[i]); }
16.
child_process.exec var exec =
require('child_process').exec; /** * 透過exec執行”command”,並於callback中接收回傳結果 */ child = exec("command", function (error, stdout, stderr) { … } );
17.
socket var net =
require('net'); var client = new net.Socket(); //使用port與host來設定socket物件 client.connect(PORT, HOST, function() { console.log('CONNECTED TO: ' + HOST + ':' + PORT); client.write('I am Chuck Norris!'); }); //接收到data的處理 client.on('data', function(data) { console.log('DATA: ' + data); client.destroy(); });
18.
Node.js的物件 - JSON
19.
初始化 ● var json
= {}; ● var json = { "key" : "value" }; 賦值 ● json.key = 'value'; ● json['key'] = 'value'; ● json.fn = function(...) {...} 取值 ● json.key ● json[‘key’] 刪除屬性 ● delete json.key JSON的操作
20.
Lab 2 -
Lightware HTTP Server ● 透過fs模組讀取某個目錄底下的文件,並提供 給http模組做呈現
21.
NPM ● 基本操作 ● 好用的模組工具
22.
模組的安裝 - NPM 搜尋 ●
npm search [模組名稱] 安裝 ● npm install [模組全名] [-g] [--save] ● npm install [模組全名]@[版本] 詳細檢視 ● npm show [模組全名] 刪除 ● npm remove [模組全名] [-g]
23.
mysql module 基本資訊 ● https://github.com/felixge/node-mysql 安裝 ●
npm install mysql 操作 ● var mysql = new require('mysql'), ● db = mysql.createConnection({....}); ● db.query(sql, condition, function(err, rows, fields){...})
24.
forever module 基本資訊 ● http://github.com/nodejitsu/forever.git 安裝 ●
npm install forever -g 操作 ● forever start [path to executable js] ● forever stop [path to executable js] ● forever restart [path to executable js] ● forever list
25.
underscore.js 基本資訊 ● Github: https://github.com/documentcloud/underscore.git ●
官網:http://underscorejs.org/ 安裝 ● npm install underscore 操作 ● var _ = require(‘underscore’) ● _.isEmpty(obj); ● _.pick(arr, [‘field1’, ‘field2’]); ● _.keys(obj)
26.
express 基本資訊 ● https://github.com/visionmedia/express ● http://expressjs.com 安裝 ●
npm install express -g 操作 ● express -e -s [project name] ● cd [project name] && npm install
27.
Node.js MVC -
ExpressJS ● Express基本結構 ● EJS ● EJS-Partial
28.
Express基本結構 專案定義檔,包含模組相依 程式啟動點,包含route設定 預設靜態資源位置,可存放 html, js, image,
css... route相關設定,存放從app.js模組化出來 的routes views相關設定,存放ejs檔案,為view層顯 示相關的檔案
29.
基本資訊 ● Github: https://github.com/visionmedia/ejs 優點: ●
採用html語法作為基礎 ● 結合express-partials可以提供樣板功能 操作: ● app.js ● views/index.ejs ● routes/index.js EJS模組
30.
EJS - app.js,
index.js # app.js ….(skip) app.set('view engine', 'ejs'); ….(skip) # routes/index.js exports.index = function(req, res){ //透過res.render設定導向的頁面與參數集合 res.render('index', { title: 'Express' }); }; ….(skip) 指定本專案使用ejs作為view engine routes中使用res.render()來指定要輸出的 頁面位置(在此為index),以及要帶過去的 參數集合(在此為{ title: 'Express' })
31.
EJS - index.ejs #
views/index.ejs <%= title %> Welcome to <%= title %> 使用<%=...%>將後方title參數值做呈現 <% if(title == ‘express’){ %> Default title: <%- title %> <% } %> 使用<%...%>內嵌Node.js運算語法 使用<%-...%>將title值帶入 (與<%=..%>不同的是,此處帶入的 值將不 會做html標籤跳脫)
32.
EJS - express-partials模組 ●
Github: https://github.com/publicclass/express-partials ● 安裝:npm install express-partial --save # app.js var express = require('express') , partials = require('express-partials') , app = express(); app.use(partials()); # views/index.ejs app.get('/test', function(req, res) { ... res.render('page_name', {layout: 'your_layout', obj: 'your objects...'}); });
33.
Lab 3 -
Express + MySQL的應用 ● 建立Express+Ejs網站,使用jetstrap樣板 ● 連線MySQL實作用戶資料的新、刪、改、查
34.
自建npm模組 ● 基本設定 ● 發佈
35.
自建NPM模組 ● Got your
npm account: https://npmjs. org/signup ● Prepare: ○ package.json ○ module dependency and you implements
36.
$ mkdir node_modules/mymodule $
cd node_modules/mymodule $ vi package.json $ vi index.js $ npm publish 發佈NPM模組 { "name": "application-name", "version": "0.0.1", "main":"index", "dependencies": { "nodeutil": "0.0.27" }} var exports = module.exports; exports.test = function(){ …. } var mymodule = require(‘mymodule’); mymodule.test(); use
37.
Lab 4 -
建立自己的Hello World模組 ● 申請NPM帳戶 ● 寫個Hello World模組 ● 發佈到NPM
38.
更多Node.js模組介紹 http://opennodes.arecord.us 按 個 讚 吧 ~
39.
END - Q&A
Jetzt herunterladen