vue+webpack備忘錄熱部署
環境
環境是windows ,沒辦法公司只有這個環境
安裝並建立專案
好訊息是直接從 node 官網 就能下載,然後無腦安裝即可
建立一個資料夾 做為工作目錄G:\aleenlee\vuetest
npm init
無腦回車 得到 package.json 內容如下
{
"name": "vuetest",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
修改一下 scripts
"scripts": {
"go": "webpack"
},
安裝外掛
需要安裝一些奇怪的外掛
npm install vue webpack babel-cli babel-loader babel-preset-es2015 html-webpack-plugin --save-dev
當然這些是不夠用的,先裝這些 那些報錯加那些
準備需要用的檔案
1.建立一個 webpack.config.js檔案 內容如下
var HtmlWebpackPlugin = require('html-webpack-plugin');
var webpack=require("webpack");
module.exports =
{
entry:
{
"index":__dirname+'/src/jssrc/index.js',
},
output: {
path: __dirname+'/src/webapp/js', //輸出資料夾
filename:'[name].js' //最終打包生成的檔名(just 檔名,不帶路徑的哦)
},
resolve: {
alias: {
vue: 'vue/dist/vue.js'
}
},
externals: {
},
module:{
loaders:[
{test:/\.js$/,loader:"babel",query:{compact:true}},
//這裡肯定要加入n個loader 譬如vue-loader、babel-loader、css-loader等等
]
},
plugins:[
new HtmlWebpackPlugin({
filename: __dirname+'/src/webapp/index.html',//目標檔案
template: __dirname+'/src/html/index.html',//模板檔案
inject:'body',
hash:true,
chunks:["index"]
})
]
}
2.建立 另一個檔案 .babelrc
{
"presets": ["es2015"]
}
3 建立資料夾及檔案,
G:\aleenlee\vuetest\src\html\index.html
index.html 內容開始
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id = "app">{{name}}</div>
</body>
</html>
index.html 內容結束
G:\aleenlee\vuetest\src\js\index.js
index.js內容開始
import Vue from "vue";
let app ={
el:"#app",
data:{
name:"aleen"
}
};
new Vue(app);
index.js內容結束
G:\aleenlee\vuetest\src\webapp\
注意index.js 這裡會報錯,直接敲程式碼即可,複製過去可能會不能用
完成建立之後顯示效果如下
在html 資料夾下寫頁面
js下寫操作程式碼
控制檯輸入
npm run go
錯誤
需要在webpack.config.js中修改一下 {test:/.js$/,loader:"babel
-loader
",query:{compact:true}},
修改後重新執行 webapp 資料夾下就會顯示一個index.html 執行這個檔案即可得到
路徑可能不一樣 需要使用工具執行webapp/index.html 檔案
新增熱部署
因為每次修改都要重新執行 npm run go
實在太麻煩,使用熱部署的方法來解決這個問題
npm install webpack-dev-server --save-dev
就能自己安裝了, 在安裝的同時我們修改一下 webpack.config.js
output: {
publicPath: "http://127.0.0.1:8080/",
path: __dirname+'/src/webapp/js', //輸出資料夾
filename:'[name].js' //最終打包生成的檔名(just 檔名,不帶路徑的哦)
},
plugins:[
new HtmlWebpackPlugin({
// filename: __dirname+'/src/webapp/index.html',//目標檔案
filename:"index.html",
template: __dirname+'/src/html/index.html',//模板檔案
inject:'body',
hash:true,
chunks:["index"]
}),
]
修改這兩處即可
package.json 中 新增 熱部署
"dev":"webpack-dev-server --inline --hot --content-base ./src/webapp"
開啟瀏覽器訪問 http://127.0.0.1:8080/ 頁面顯示
隨意修改一下 src\js\index.js
name:"lucifer"
}
到頁面中 已經變成
到這裡 熱部署已經成功了
後來測試的時候發現好多loader 需要載入
例如 css-loader、 vue-loader、babel-loader 、vue-template-compiler 都需要安裝一下
相關文章
- Docker部署禪道備忘錄Docker
- 備忘錄
- 【備忘錄】
- 備忘錄模式模式
- iOS備忘錄iOS
- JUnit備忘錄
- CSS備忘錄CSS
- RabbitMQ備忘錄MQ
- Python 備忘錄Python
- Java備忘錄《集合》Java
- 網站備忘錄網站
- rman命令備忘錄
- Eigen備忘錄
- Docker部署flink備忘Docker
- 備忘錄模式(Memento)模式
- Java備忘錄《“==” 和 “equals”》Java
- Dart 學習備忘錄Dart
- linux 備忘記錄Linux
- JavaMementoPattern(備忘錄模式)Java模式
- 19_備忘錄模式模式
- 開發 備忘錄 - 雜
- 設計模式----備忘錄模式設計模式
- [譯] Flutter 佈局備忘錄Flutter
- 常用工具備忘錄
- 第 22 章 備忘錄模式模式
- Android備忘錄《幀動畫》Android動畫
- 萌新(我)的Git備忘錄Git
- 設計模式 - 備忘錄模式設計模式
- Backgroundcheck:Google隱私備忘錄Go
- WPF備忘錄四(事件動畫)事件動畫
- 初學Java的備忘錄Java
- 運維指令碼備忘錄運維指令碼
- 如何給備忘錄設計密碼?Mac上備忘錄設定密碼教程密碼Mac
- Docker 常用命令備忘錄Docker
- 備忘錄八:Shiro核心類
- 行為型模式:備忘錄模式模式
- 伺服器遷移備忘錄伺服器
- Java備忘錄《語言特點》Java