当前位置: 首页 > wzjs >正文

网站开发还需要兼ie吗网站 编程 语言

网站开发还需要兼ie吗,网站 编程 语言,商洛免费做网站公司,wordpress视频播放插件下载本教程将一步步教你从零开发、打包并发布一个 TypeScript 工具库到 npm。以日期时间格式化工具为例,涵盖项目初始化、Vite 打包、类型声明输出、npm 配置、实际发布等完整流程,适合开发者直接套用。 文章目录 📁 项目结构预览🧱 初…

本教程将一步步教你从零开发、打包并发布一个 TypeScript 工具库到 npm。以日期时间格式化工具为例,涵盖项目初始化、Vite 打包、类型声明输出、npm 配置、实际发布等完整流程,适合开发者直接套用。


文章目录

    • 📁 项目结构预览
    • 🧱 初始化项目
    • ✍️ 编写功能模块
    • ⚙️ 配置 TypeScript
    • 🔧 配置 Vite 打包
    • 📦 配置 package.json
    • 📖 添加 README.md(简略)
    • 使用示例
    • 🧠 发布后的版本管理建议


📁 项目结构预览

ts-date-utils/
├── dist/                     # 构建产物输出目录
│   ├── types/                # 类型声明文件输出目录
│   ├── ts-date-utils.es.js  # ES 模块
│   └── ts-date-utils.umd.js # UMD 模块
├── src/
│   └── index.ts              # 工具函数主入口
├── package.json              # 项目和发布配置
├── tsconfig.json             # TypeScript 配置
├── vite.config.ts            # Vite 打包配置
├── README.md                 # 包文档说明
└── .gitignore

🧱 初始化项目

mkdir ts-date-utils && cd ts-date-utils
npm init -y
npm install typescript vite -D
npx tsc --init
npm install @types/node -D

✍️ 编写功能模块

src/index.ts

export function formatDate(date: Date, format: string = 'YYYY-MM-DD HH:mm:ss'): string {const map: Record<string, string> = {'YYYY': date.getFullYear().toString(),'MM': (date.getMonth() + 1).toString().padStart(2, '0'),'DD': date.getDate().toString().padStart(2, '0'),'HH': date.getHours().toString().padStart(2, '0'),'mm': date.getMinutes().toString().padStart(2, '0'),'ss': date.getSeconds().toString().padStart(2, '0')};return format.replace(/YYYY|MM|DD|HH|mm|ss/g, m => map[m]);
}export function formatTimestamp(timestamp: number, format: string = 'YYYY-MM-DD HH:mm:ss'): string {return formatDate(new Date(timestamp), format);
}export function now(format: string = 'YYYY-MM-DD HH:mm:ss'): string {return formatDate(new Date(), format);
}export function parseDateString(str: string): Date {return new Date(str.replace(/-/g, '/'));
}export function isValidDate(val: unknown): val is Date {return val instanceof Date && !isNaN(val.getTime());
}

⚙️ 配置 TypeScript

tsconfig.json

{"compilerOptions": {"target": "ES2020","module": "ESNext","lib": ["ES2020", "DOM", "DOM.Iterable"],"moduleResolution": "node","esModuleInterop": true,"declaration": true,"declarationDir": "dist/types","emitDeclarationOnly": true,"outDir": "dist","skipLibCheck": true,"isolatedModules": true,"moduleDetection": "force","strict": true,"noUnusedLocals": true,"noUnusedParameters": true,"noFallthroughCasesInSwitch": true,"noUncheckedSideEffectImports": true,"types": ["node"]},"include": ["src"]
}

🔧 配置 Vite 打包

vite.config.ts

import { defineConfig } from 'vite';
import { resolve } from 'path';export default defineConfig({build: {lib: {entry: resolve(__dirname, 'src/index.ts'),name: 'TsDateUtils',fileName: (format) => `ts-date-utils.${format}.js`,formats: ['es', 'umd']},rollupOptions: {external: [],output: {globals: {}}}}
});

📦 配置 package.json

{"name": "kaze-ts-date-utils","version": "1.0.0","description": "A simple and flexible TypeScript date formatting library","main": "dist/ts-date-utils.umd.js","module": "dist/ts-date-utils.es.js","types": "dist/types/index.d.ts","files": ["dist","README.md"],"scripts": {"build": "vite build && tsc --emitDeclarationOnly","prepublishOnly": "npm run build"},"keywords": ["date","format","typescript","utils","time"],"author": "kaze","license": "MIT","devDependencies": {"@types/node": "^20.0.0","typescript": "^5.0.0","vite": "^5.0.0"}
}

📖 添加 README.md(简略)

# ts-date-utils> A simple and flexible TypeScript date formatting utility.## 安装
```bash
npm install kaze-ts-date-utils

使用示例

import { formatDate, now } from 'kaze-ts-date-utils';
console.log(now());
console.log(formatDate(new Date(), 'YYYY/MM/DD HH:mm'));

---## 🚀 发布到 npm1. 登录 npm(只需一次)
```bash
npm login
  1. 打包构建
npm run build
  1. 发布
npm publish

注意:版本号每次发布必须递增。


🧠 发布后的版本管理建议

  • bugfix / 小改动 → npm version patch
  • 新功能 → npm version minor
  • 有破坏性改动 → npm version major

发布更新:

npm version patch && npm publish

✅ 恭喜你,现在你已经掌握了完整的 TypeScript npm 包开发与发布流程!

http://www.dtcms.com/wzjs/562799.html

相关文章:

  • 东莞技术支持网站建设专家忻州网站建设哪家好
  • dedecms妇科医院wap网站模板 v1.0广州城乡建设局
  • 揭阳网站建设工作新浪博客网页版登录入口
  • 网站命名的原则包括网站建设 费用预算
  • 做网站定位app界面设计包括哪几部分
  • 做二手网站有哪些问题wordpress 主题站
  • php网站源代码修改什么是网站开发流程
  • 公司网站应该包括哪些内容免费动漫软件app下载大全
  • 搜一搜站长工具网店logo设计图片免费
  • 网站备案快速网络营销案例100例
  • 怎么制作网站模版郑州seo优化顾问
  • 江门市网站开发大唐工作室 网站制作
  • 站内搜索工具韩国出线有多难
  • 电子商务网站的作用外贸人才网
  • 网站建设便宜的公司哪家好北京建设主管部门官方网站
  • h5响应式企业网站源码wordpress静态分页
  • 网站内容设计主要包括程序员自己做网站
  • 优化百度网站wordpress可以做商城吗
  • 手机企业网站源码设计素材的网站
  • 河南睢县筑宇建设网站网站建设的发展趋势
  • 长沙建站模板承德网站推广
  • 如何配置 网站二级域名wordpress十大表格插件
  • 企业网站建设方案 完整版同城换物网站为什么做不起来
  • jsp网站开发工资传媒网站建设价格
  • 网站建设 名词解释嵌入式开发工程师前景
  • dnf游戏币交易网站建设佛山宽屏网站建设
  • php企业网站搜索网站怎么做
  • 重庆 网站建设seo价格是多少
  • 凤城市网站建设企业网站优化做什么
  • 做网站文字编辑工作好不好深圳专业网站