xpe
v0.0.0-alpha.1
Published
Framework
Downloads
1
Maintainers
Readme
PDD Framework
PDD⭐ - 是数企官方开发的纯前端容器框架,在Typescript赋能下基于IOC开发出的OOP框架,同时通过内置模块可快速实现AOP开发。
PDD能带来什么:
- 统一代码,规范化。
- 更好的拓展、易于维护。
- 提升开发效率,开发只需考虑解决具体功能即可。
为什么要做PDD:
- 1.由于前端只有Vue/React/NG等MVVM框架,缺少像Spring、Laravel、Django这类架构更清晰、生态更完善的框架 [当然现在有了像Nest.js、Midway.js这类Node.js服务端框架] ,导致绝大多数纯前端对开发项目的认知不足。
- 2.前端缺少较为完整的开发方案,导致整体项目“乱”-高耦合、低聚合。PDD给前端项目开发整体规范化约束。
- 3.提升可维护性,目前PDD从整体配置到应用层面的拓展都有着明确的规定。大家都怕见到“宝藏代码”,“千人千面”这些给开发者造成的困扰无异乎抛出异常缺没有指出异常具体位置,很难维护。
如何使用:
# 通过npm方式安装
npm i pdd
# 通过cnpm方式安装
cnpm i pdd
# 通过yarn方式安装
yarn add pdd
# 通过pnpm方式安装,推荐
pnpm add pdd
集成到现有框架中,以Vue3+TS项目为模板来说
// main.ts
/********** PDD Start **********/
import Application from 'pdd'
// PDD AppConfig 获取App配置文件
import AppConfig from './app/config/AppConfig'
// PDD Setting Config
Application.setAppConfig(AppConfig)
// PDD Run
Application.run()
// 如需使用日志系统
import { Log } from 'pdd'
// 日志初始化配置
Log.init({
// 使用web-sql方式存储
storage:'WEB_SQL',
// 存储的总条数,再超出范围后会将最先存储的日志给替换,请参照日志系统文档
total:10000,
// 控制台打印的级别,error及以下的级别在控制台打印,默认为debug级别,设置为false时则全部级别不在控制台打印
console:'error'
})
// 如需使用任务系统
import { Job } from 'pdd'
// 启动任务系统,具体细节请参照任务系统文档
Job.boot()
更多使用方法参照 [官方文档]: https://jxbse4s2oz1.feishu.cn/wiki/wikcnX8DSYtb1agME6mxb6NRfrQ
ChangeLog:
Version 0.3.20
- 添加中间件上下文
- http方法参数处理更新
Version 0.3.15
- 请求中间件和响应中间件添加上下文。
- 请求方法添加fetch方法,返回为上下文。
Version 0.3.14
- $http.send方法处理自定义request headers会覆盖自动携带数据问题。
Version 0.3.13
- GET去除携带Content-Type
Version 0.3.7
- 启动BUG处理。
Version 0.3.6
- 对
Application
、ServiceProvider
、HttpService
、Middleware
、Container
等类型进行了深度优化。- 对
Pipeline
和Log
部分代码重构,Pipeline
做类似Java lite-flow
组合式、并联、串联校验,Log
使用三方Dexie.js
处理SQL处理。