标签:clean 控制台 dev oss 压缩 java htm require demo
为了方便后期使用,我们搭建一个基于Typescript的开发环境,后期的项目都可以基于此进行开发。
//注意事项:
1、在输入了npm init内容后,我们需要填写配置项,其中
entry point: ./src/index.ts
keywords:typescript,source_code,lison
license:MIT
demo2 │ package.json // 配置文件 │ ├─build // webpack打包文件和配置 ├─src // 项目代码文件 │ ├─api │ ├─assets │ ├─config │ ├─tools │ └─utils └─typings // ts文件集
安装ts:npm install typescript tslint -g, 然后使用ts初始化项目: tsc --init 命令会生成json文件
const HtmlWebpackPlugin = require(‘html-webpack-plugin‘)
const CleaWebpackPlugin = require(‘clean-webpack-plugin‘)
module.exports = {
entry: "./src/index.ts", // 入口点
output: {
filename: "main.js", // 编译后的输出文件, wepack自动引入main.js到index.html中
},
resolve: {
extensions: [".js", ".ts", ".tsx"], // 自动加载文件后缀的文件
},
module: {
rules: {
test: /\.tsx?$/,
use: "ts-loader", // 将tsx的文件用ts-loader解析
exclude: /node_modules/, // 忽略到nodemodules
},
},
// NODE_ENV在package.json中传入,在其中使用corss-env 传递环境变量,使用dev-server启动服务(需要安装cnpm install cross-env -D
devtool: process.env.NODE_ENV === "production" ? false : "inline-source-map", // 通过环境变量判断是否加载此选项
devServer:{
contentBase:‘./dist‘, // 启动目录
stats:‘errors-only‘, // 控制台只展示error信息
compress:false, // 是否压缩
host:‘localhost‘,
port:8089
},
plugins:[
// 安装插件 cnpm install clean-webpack-plugin html-webpack-plugin -D
new CleaWebpackPlugin ({
cleanOnceBeforeBuildPatterns:[‘./dist‘]
}),
new HtmlWebpackPlugin({
template:‘./src/template/index.html‘
})
]
};
{
"name": "demo2",
"version": "1.0.0",
"description": "",
"main": "./src/index.ts",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "cross-env NODE_ENV=development webpack-dev-server --config ./build/webpack.config.js"
},
"keywords": [
"typescript",
"source_code",
"lison"
],
"author": "",
"license": "MIT",
"devDependencies": {
"webpack": "^4.43.0",
"webpack-cli": "^3.3.11",
"webpack-dev-server": "^3.0.0"
}
}
标签:clean 控制台 dev oss 压缩 java htm require demo
原文地址:https://www.cnblogs.com/double-W/p/12887919.html