摘要:用初始化一下,就會為你創(chuàng)建一個,用來管理你的依賴包,命令配置。還是不清除的可以去我的上看一下,很水的一個項(xiàng)目,別噴我。
單純的運(yùn)行一段js邏輯的話就不需要構(gòu)建測試項(xiàng)目,直接寫個js,node命令行運(yùn)行一下就可以了,但是往往閱讀一段他人的源碼想要自己測試一下就沒辦法這樣子,因?yàn)閯e人會依賴模塊,會操作瀏覽器dom等等,所以自己寫一個測試小demo有時(shí)候就很有用處。
nodejs里面又沒有什么dom元素,什么window全局對象,所以我們的代碼最好運(yùn)行在瀏覽器端,那么構(gòu)造一個index.html是必不可少的,然后引入對應(yīng)的js,這樣就可以了?哪有這么簡單。
npm init 初始化項(xiàng)目別人的代碼里面依賴了一些模塊,還用了ES6的語法,所以我們需要讓我們的node環(huán)境支持ES6語法,那就需要引入babel。用npm init初始化一下,node就會為你創(chuàng)建一個package.json,用來管理你的依賴包,命令配置。
babel的配置npm install babel-register --save npm install babel-preset-env --save
然后通過
require("babel-register"); require("./test.js");
的方式來解決ES6的語法問題,但是你會發(fā)現(xiàn)瀏覽器連require都不支持,那是當(dāng)然的,JavaScript里面從來沒聽說過require語法。所以我們需要用到構(gòu)建工具把代碼編譯成瀏覽器可以識別的js。這里就要用到webpack來進(jìn)行打包模塊化。
webpack打包構(gòu)建記好先全局安裝webpack:
npm i webpack -g
然后我們就可以通過配置來對你的js進(jìn)行打包了,下面是最簡單的配置:
const path = require("path"); module.exports = { // JavaScript 執(zhí)行入口文件 entry: "./index.js", output: { // 把所有依賴的模塊合并輸出到一個 bundle.js 文件 filename: "bundle.js", // 輸出文件都放到 dist 目錄下 path: path.resolve(__dirname, "./dist"), } };
webpack的配置自行研究,推薦《深入淺出Webpack》。
運(yùn)行
webpack --config webpack.config.js
就可以打包你的js了,目錄就是當(dāng)前目錄的dist文件夾下。當(dāng)然想要起作用index.html必須引入這個js。
使用webpack-dev-server起服務(wù)你是不是發(fā)現(xiàn)每次更改代碼就需要打包一下,這樣肯定很煩啊,所以利用webpack-dev-server在本地起一個服務(wù),方便在你做出修改時(shí)刷新就可以看到變化。
我們構(gòu)建server.js,像這樣
var webpack = require("webpack"); var WebpackDevServer = require("webpack-dev-server"); var config = require("./webpack.config"); var compiler = webpack(config); var server = new WebpackDevServer(compiler, { publicPath: config.output.publicPath, hot: true, historyApiFallback: true, stats: { colors: true, hash: false, timings: true, chunks: false, chunkModules: false, modules: false } }); server.listen(3040, "localhost", function(err, result) { if (err) { return console.log(err); } console.log("Listening at http://localhost:3040/"); });
之后運(yùn)行node server.js就可以在本地3040端口七個服務(wù),之后你想在index.html寫什么東西自己看著吧,邏輯自然也可以運(yùn)行。
還是不清除的可以去我的GitHub上看一下,很水的一個項(xiàng)目QuickBuild,別噴我。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/108089.html
摘要:編寫一個接口創(chuàng)建命名為根據(jù)實(shí)際情況修改創(chuàng)建類,內(nèi)容如下啟動主程序,使用等工具發(fā)起請求,可以看到頁面返回編寫單元測試用例打開的下的測試入口類。 簡介 在您第1次接觸和學(xué)習(xí)Spring框架的時(shí)候,是否因?yàn)槠浞彪s的配置而退卻了?在你第n次使用Spring框架的時(shí)候,是否覺得一堆反復(fù)黏貼的配置有一些厭煩?那么您就不妨來試試使用Spring Boot來讓你更易上手,更簡單快捷地構(gòu)建Spring應(yīng)...
摘要:可以使用或來安裝我用來重新嘗試一次對速度表示不理想的可以嘗試淘寶的不要過度依賴中可以寫成放哪都行,可以寫成可以寫成看到這個畫面,安裝完成了。 初步搭建腳手架 Tips 任何不錯的開源項(xiàng)目都有 project-cli 腳手架、我們用它生成往往能快速配制出最佳的、理想的腳手架 我通常使用 cli 生成項(xiàng)目骨架再在之基礎(chǔ)上進(jìn)行個人修改。 什么是 CLI 命令行界面(英語:command-li...
摘要:可以使用或來安裝我用來重新嘗試一次對速度表示不理想的可以嘗試淘寶的不要過度依賴中可以寫成放哪都行,可以寫成可以寫成看到這個畫面,安裝完成了。 初步搭建腳手架 Tips 任何不錯的開源項(xiàng)目都有 project-cli 腳手架、我們用它生成往往能快速配制出最佳的、理想的腳手架 我通常使用 cli 生成項(xiàng)目骨架再在之基礎(chǔ)上進(jìn)行個人修改。 什么是 CLI 命令行界面(英語:command-li...
摘要:三部署架構(gòu)說明這個方案僅適用于小公司敏捷項(xiàng)目團(tuán)隊(duì)聯(lián)調(diào)測試環(huán)境的部署,同時(shí)也可以作為學(xué)習(xí)入門的,并不適用于有一定規(guī)模的生產(chǎn)環(huán)境。另外,建議把測試域名泛解析到部署這臺服務(wù)的機(jī)器。模塊配置部署腳本業(yè)務(wù)模塊的配置基本是通過部署腳本來操作的。 項(xiàng)目地址: https://github.com/xiongwilee...基本特性: 快捷部署多人nginx+php的開發(fā)測試環(huán)境,也可以擴(kuò)展構(gòu)建其...
摘要:三部署架構(gòu)說明這個方案僅適用于小公司敏捷項(xiàng)目團(tuán)隊(duì)聯(lián)調(diào)測試環(huán)境的部署,同時(shí)也可以作為學(xué)習(xí)入門的,并不適用于有一定規(guī)模的生產(chǎn)環(huán)境。另外,建議把測試域名泛解析到部署這臺服務(wù)的機(jī)器。模塊配置部署腳本業(yè)務(wù)模塊的配置基本是通過部署腳本來操作的。 項(xiàng)目地址: https://github.com/xiongwilee...基本特性: 快捷部署多人nginx+php的開發(fā)測試環(huán)境,也可以擴(kuò)展構(gòu)建其...
閱讀 3402·2023-04-26 01:46
閱讀 2931·2023-04-25 20:55
閱讀 5508·2021-09-22 14:57
閱讀 2989·2021-08-27 16:23
閱讀 1726·2019-08-30 14:02
閱讀 2077·2019-08-26 13:44
閱讀 656·2019-08-26 12:08
閱讀 2975·2019-08-26 11:47