日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

二、搭建Apache服务器 模板引擎

發(fā)布時間:2024/7/5 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 二、搭建Apache服务器 模板引擎 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1. 案例:搭建簡單的Apache服務(wù)器

var http = require('http') var fs = require('fs')var server = http.createServer()var wwwDir = 'D:\\CWork\\node.js黑馬程序員\\study_nodejs\\day02\\code\\www'server.on('request', function(req, res) {var url = req.urlfs.readFile('./template.html', function(err, data) {if (err) {res.end('404 Not Found.')}// 1. 如何得到wwwDir目錄列表中的文件名稱和目錄名// fs.readdir// 2. 如何將得到的文件名和目錄名替換到template.html中// 2.1 在template.html中需要替換的位置預(yù)留一個特殊的標(biāo)記(^_^)// 2.2 根據(jù)files生成需要的HTML內(nèi)容// 只要你 做了這兩件事情,這個問題就解決了// fs.readdir(wwwDir, function(err, files) {if (err) {return console.log('讀取目錄不存在')}var content = ''files.forEach(function (item) {// 在 ES6的 ``字符串中,可以使用${}來引用變量content += `<tr><td data-value="apple/"><a class="icon dir" href="/D:\\CWork\\node.js黑馬程序員\\study_nodejs\\day02\\code\\www">${item}/</a></td><td class="detailsColumn" data-value="0"></td><td class="detailsColumn" data-value="1509589967">2017/11/2 上午10:32:47</td></tr>`})data = data.toString()data = data.replace('^_^',content)res.end(data)console.log(files)});});})// 3. 綁定端口號,啟動服務(wù) server.listen(3000, function() {console.log('Server running...') })

2. 模板引擎的基本使用

需要安裝 art-template
cmd中執(zhí)行命令 npm install art-template --save

官網(wǎng)下載模板引擎

2.1 在瀏覽器中使用art-template模板引擎

<!DOCTYPE html> <html> <head><title></title> </head> <body><!-- 注意: 在瀏覽器中需要引用template-web.js文件 --><script src="node_modules/art-template/lib/template-web.js"></script><script type="text/template" id="tpl"><!DOCTYPE html><html><head><title></title></head><body><p>hello {{ name }}</p><p>我今年{{ age }}歲了</p><p>我喜歡: {{each hobbies}} {{$value}} {{/each}}</p></body></html></script><script>var ret = template('tpl', {name: 'Jack',age: 18,hobbies: ['寫代碼','玩游戲','唱歌']})console.log(ret)</script> </body> </html>

2.2 在node中使用art-template模板引擎


3. Apache案例升級版:加入模板引擎

var http = require('http') var fs = require('fs') var template = require('art-template')var server = http.createServer()var wwwDir = 'D:\\CWork\\node.js黑馬程序員\\study_nodejs\\day02\\code\\www'server.on('request', function(req, res) {var url = req.urlfs.readFile('./template-apache.html', function(err, data) {if (err) {res.end('404 Not Found.')}// 1. 如何得到wwwDir目錄列表中的文件名稱和目錄名// fs.readdir// 2. 如何將得到的文件名和目錄名替換到template.html中// 2.1 在template.html中需要替換的位置預(yù)留一個特殊的標(biāo)記(^_^)// 2.2 根據(jù)files生成需要的HTML內(nèi)容// 只要你 做了這兩件事情,這個問題就解決了////fs.readdir(wwwDir, function(err, files) {if (err) {return res.end('找不到文件目錄')}// 這里只需要使用模板引擎解析替換data中的模板字符串就可以了// 數(shù)據(jù)就是files// 然后去你的template.html文件中編寫你的模板語法就可以了var htmlStr = template.render(data.toString(), {title: '哈蛤',files: files,wwwDir: wwwDir})res.end(htmlStr)});});});// 3. 綁定端口號,啟動服務(wù) server.listen(3000, function() {console.log('Server running...') })

總結(jié)

以上是生活随笔為你收集整理的二、搭建Apache服务器 模板引擎的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。