TypeScript

144 阅读1分钟

全局环境搭建

  1. 确保已经安装node.js环境
  2. 全局安装typescript tslint

typescript项目开发搭建

  1. package.json

     {
       "name": "typescript_quickstart",
       "version": "1.0.0",
       "description": "",
       "main": "src/index.js",
       "scripts": {
         "test": "echo \"Error: no test specified\" && exit 1",
         "start": "cross-env NODE_ENV='devlopment' webpack-dev-server --config ./build/webpack.config.js"
       },
       "keywords": [],
       "author": "",
       "license": "ISC",
       "devDependencies": {
         "clean-webpack-plugin": "^3.0.0",
         "html-webpack-plugin": "^3.2.0",
         "ts-loader": "^6.0.4",
         "webpack": "^4.39.3",
         "webpack-cli": "^3.3.8",
         "webpack-dev-server": "^3.8.0"
       },
       "dependencies": {
         "cross-env": "^5.2.1",
         "typescript": "^3.6.2"
       }
     }
    
  2. /build/webpack.config.js

     const HtmlWebpackPlugin =  require('html-webpack-plugin')
     const {CleanWebpackPlugin} = require('clean-webpack-plugin')
     
     module.exports={
         entry:'./src/index.ts',
         output:{
             filename:"main.js"
         },
         resolve:{
             extensions:['.ts','/tsx','.js']
         },
         module:{
             rules:[{
                 test:/\.tsx?$/,
                 use:'ts-loader',
                 exclude:/node_modules/
             }]
         },
         devtool: process.env.NODE_ENV === 'production' ? false : 'inline-source-map',
         devServer:{
             contentBase:'./dist',
             stats:"errors-only",
             compress:false,
             host:"localhost",
             port:8089
         },
         plugins:[
             new CleanWebpackPlugin({
                 cleanOnceBeforeBuildPatterns:['./dist']
             }),
             new HtmlWebpackPlugin({
                 template:'./src/template/index.html'
             })
         ]
     }
    
  3. npm run start 测试

基础类型

  1. 布尔值
  2. 数值
  3. 字符串
  4. 数组
  5. 元组
  6. 枚举值
  7. any
  8. void
  9. null和undefined
  10. never
  11. object
  12. 类型断言