TS基础记录

ts配置文件的配置项有很多下面是一些常见的配置:

{

//这个ts的json可以写注释,用来指令哪些ts文件需要编译,/*任意文件,/**任意目录,./是当前目录 ,

// ../是父级目录,/是根目录(表示一下子回到最顶端的那个文件夹下)

"include": [

"../ts_01/**/*"

],

//排除编译文件

"exclude": [

],

"compilerOptions": {

//所有严格检查的总开关,默认为false

"strict": true,

//使用什么版本的es

"target": "ES6",

//指定使用模块化的规范

"module": "ES6",

//导入别的库,一般默认就行,除非是浏览器环境

// "lib": \[\],

//指定编译后js文件的目录

"outDir": "./dist",

//合成一个文件

// "outFile": "",

//是否对js文件进行编译,默认为false

"allowJs": true,

// 是否检查js代码符合语法规范,默认为false

"checkJs": false,

//是否移除注释,默认为false

"removeComments": false,

//不生成编译后的文件默认为false

"noEmit": false,

//有错误时候就不生成编译后的文件,默认为false

"noEmitOnError": false,

//设置代码严格模式,默认为false

"alwaysStrict": false,

//不允许隐式any,默认为false

"noImplicitAny": false,

//不允许不明确类型的this,默认this

"noImplicitThis": false,

//严格检查空值默认false

"strictNullChecks": false,

},

}

ts打包配置文件

npm init -y

需要下载的插件

npm i -D webpack-cli webpack typescript ts-loader

需要配置的文件

package-lockjson是自动生成的依赖

package.json

{

"name": "ts",

"version": "1.0.0",

"description": "",

"main": "index.js",

"scripts": {

"test": "echo \"Error: no test specified\" && exit 1",

"build": "webpack",

"start": "webpack serve --open --mode development"

},

"keywords": \[\],

"author": "",

"license": "ISC",

"devDependencies": {

"@babel/core": "^7.25.2",

"@babel/preset-env": "^7.25.3",

"babel-loader": "^9.1.3",

"core-js": "^3.38.0",

"html-webpack-plugin": "^5.6.0",

"ts-loader": "^9.5.1",

"typescript": "^5.5.4",

"webpack": "^5.93.0",

"webpack-cli": "^5.1.4",

"webpack-dev-server": "^5.0.4"

}

}

tsconfig,json

{

"compilerOptions": {

"module": "ES2015",

"target": "ES2015",

"strict": true,

"typeRoots": "./node_modules/@types",

"types": "node" // 如果你的项目依赖于 Node.js 的类型定义,可以添加这个

}

}

webpack.config,js

const HtmlWebpackPlugin = require('html-webpack-plugin');

const path =require('path');

//引入插件

//webpack中所有的配置信息都应该写在module.exports中

module.exports = {

mode: 'development',

//入口文件

entry:"./src/index.ts",

//指定打包文件所在目录

output:{

//指定打包文件夹的目录

path:path.resolve(__dirname,'dist'),

filename:"bundle.js",

//告诉webpack不使用箭头函数

// environment:{

// arrowFunction:false

// }

},

//指定webpack打包时要使用模块

module:{

rules:[

{

//test指定的是对谁生效

test:/\.ts$/,

// 要使用的loader

use:[

{

loader: 'babel-loader',

options: {

presets: [

'@babel/preset-env', { targets: { chrome: "88" }, corejs: "3.0", useBuiltIns: "usage" }

]

}

},

'ts-loader',

],

//要排除的文件

exclude:/node-modules/

}

]

},

plugins:[

new HtmlWebpackPlugin({

// title:"自定义title"

template:"./src/index.html"

}),

],

resolve:{

extensions: '.ts','.js'

}

}

前端配置文件很多,大致了解意思即可,需要用的时候直接用配置好的模版就行

相关推荐
IT_陈寒3 小时前
Java中equals方法比了个寂寞?原来这才是正确的重写姿势
前端·人工智能·后端
默_笙3 小时前
🚓 分诊台与拆题术:让 RAG 学会判断和规划
前端·javascript
CopyCode3 小时前
用 AI 迁项目有多爽?我把 Webpack 迁 Vite 的全过程记下来了
前端·架构
去伪存真3 小时前
Electron 自动化发布指南:GitHub Actions 跨平台打包全纪录
前端·electron
计算机魔术师3 小时前
OpenAI智能体失控闯进美国政府网站,53张用户图片外泄背后
前端
颜进强3 小时前
14 · NestJS ExecutionContext 执行上下文:守卫、拦截器、过滤器拿到的"同一个 context",为什么能力不一样?
前端·后端·ai编程
程序员Flycan3 小时前
🚀 跨域终结者:前端代理服务器(Proxy)原理解析与配置总结
前端
怕浪猫3 小时前
顶级模型一句话,AI 写出了能玩的 QQ飞车
前端·面试·github
huakoh3 小时前
MCP 报错分不清?先看响应里是 result 还是 error
前端
呃呃呃呃ex3 小时前
10. 现代前端工程化:ES6 React 项目实战与原理解析
前端·javascript