1、搭建TS开发环境(利用rollup)

我门在使用ts的时候·需要将编写的ts代码转换成js 在运行

typescript这个模块 来进行文件的编译
npm install typescript -g 全局的包只能在命令行中使用 tsc

(1、)最终直接生成js 文件再运行
tsc--init 初始化ts的配置文件

(2、) 比较适合临时测试
vscode插件来实现代码的运行
code-runner 如果是js文件 内部会直接采用 node + 文件名来执行此文件,如果是ts文件 需要通过ts-node 来直接执行

(3、)通过构建工具将代码转换成js,再去运行 (webpack、rollup,esbuild)最终编译成js文件执行
rollup安装:npm i rollup typescript rollup-plugin-typescript2 @rollup/plugin-node-resolve -D

typescript 复制代码
//默认rollup打包的时候 回查找当前目录下的rollup.config.js文件
//采用es模块来编写配置文件

import ts from 'rollup-plugin-typescript2'
import { nodeResolve } from '@rollup/plugin-node-resolve'
import path from 'path'
import { fileURLToPath } from 'url'
import typescript from '@rollup/plugin-typescript';

//当前文件的绝对路径 file://xxxx/xxxx/xxxx

const _filename = fileURLToPath(import.meta.url) //当前文件的绝对路径
const __dirname = path.dirname(_filename) //当前文件所在的目录

//打包的配置对象
export default {
    // input: path.resolve(__dirname, 'src/index.ts'),//入口文件
    input: './src/index.ts',//项目入口
    output: {
        file: path.relative(__dirname, 'dist/bundle.js'),//打包的文件在当前目录下的dist目录
        format: 'iife',//输出的模块规范(function(){})()
        sourcemap: true,//生成sourcemap文件
        name: 'MyModule'  // 添加这一行
    },
    plugins: [
        typescript(),
        nodeResolve({ extensions: ['.js', '.ts'] }),//(第三方包的入口)入口文件 可以使js 也可以是ts
        ts({
            tsconfig: path.resolve(__dirname, 'tsconfig.json')
        })
    ]
}
相关推荐
醉の虾21 分钟前
Vue3 使用v-for 渲染列表数据后更新
前端·javascript·vue.js
张小小大智慧30 分钟前
TypeScript 的发展与基本语法
前端·javascript·typescript
hummhumm39 分钟前
第 22 章 - Go语言 测试与基准测试
java·大数据·开发语言·前端·python·golang·log4j
asleep7011 小时前
第8章利用CSS制作导航菜单
前端·css
hummhumm1 小时前
第 28 章 - Go语言 Web 开发入门
java·开发语言·前端·python·sql·golang·前端框架
幼儿园的小霸王2 小时前
通过socket设置版本更新提示
前端·vue.js·webpack·typescript·前端框架·anti-design-vue
疯狂的沙粒2 小时前
对 TypeScript 中高级类型的理解?应该在哪些方面可以更好的使用!
前端·javascript·typescript
gqkmiss2 小时前
Chrome 浏览器 131 版本开发者工具(DevTools)更新内容
前端·chrome·浏览器·chrome devtools
Summer不秃2 小时前
Flutter之使用mqtt进行连接和信息传输的使用案例
前端·flutter
旭日猎鹰2 小时前
Flutter踩坑记录(二)-- GestureDetector+Expanded点击无效果
前端·javascript·flutter