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'

}

}

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

相关推荐
啾咪orJIUMI1 小时前
Vue 3 + 高德地图封装实战:点位、区域、Loca 流光与 Vue 信息窗体
前端·vue.js
掘金者阿豪1 小时前
AI数据库不只是向量检索:从数据语义到库内智能计算的技术演进
前端
梦里寻码1 小时前
我用 NestJS + Vue3 写了一套完整的研发管理系统(58 表 / 229 API / 130 项断言,全开源
前端·后端·算法
FRing031 小时前
vue2干货总结8(路由模块封装、router-link、声明式导航、路由重定向、编程式导航)
开发语言·前端·vue.js·vue2
SameX1 小时前
HarmonyOS ArkUI Dialog 复用 用 @CustomDialog + enum type 做多类型统一管理的做法
前端
AiMan2 小时前
豆包爱学还是不可以导出左侧所有对话,只能单容导出,方法不对吗
前端
AiMan2 小时前
Grok生成的内容能否下载吗?
前端
用户298698530143 小时前
Python 实战:将 HTML 批量转换为 Markdown
python·html·markdown
徐小夕3 小时前
JitArchives,一款基于JitWord协同AI文档打造的企业级电子档案系统
前端·vue.js·github
陈随易3 小时前
Node.js 2026上半年都有哪些性能提升?
前端·后端·程序员