欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 新车 > TS基础记录

TS基础记录

2024/10/25 0:34:24 来源:https://blog.csdn.net/m0_73410230/article/details/141169313  浏览:    关键词: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']

    }

}

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

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com