VFrame

前端基于MVC的开发框架


关于VFrame

<h2>VFrame是什么</h2> <p>VFrame(后面的文档简称为 VF)是一个基于数据模型设计的前端开发框架,旨在提供一系列易于扩展、开箱即用的特性,来方便前端更好的组织代码。</p> <h2>VFrame适合做什么</h2> <p>VF适合做一些后台类、工具类的前端页面,例如 CMS、后台管理或者商城之类的。如果是一个简单的网页,或者是一个用于宣传的落地页,就不适合使用 VF。</p> <h2>VFrame要干什么</h2> <p>VF使用一个独立的数据模型层,在模型层中进行字段定义、格式化、校验、获取数据(通过网络请求)、提交 等等各种属性和方法,来约束(或者说规范化)业务逻辑的实现方式。</p> <h2>VFrame的由来</h2> <p>18年从后端开发开始接触使用vue做前端开发时,发现当我们要构建一个包含大量的 列表、各类表单 的网页时,我们需要在每个页面去构建大同小异的页面,多人协同开发时也没有一个统一的代码组织模式,又或者同一个开发者,也会面临着没有一个特定的开发模式,导致代码结构混乱的情况,比如我们需要做10个table,每个table的column都有一定的定制化,又都有 新建、筛选、导出、分页等操作,虽然现代前端开发框架(vue、react)的组件化(或者叫做模块化?)在一定程度缓解了这个问题,但依然还是有 接口调用、按钮事件 都在 view 层实现,最终导致了项目代码的冗余。 当时我是从PHP开发后入手的vue,所以在VF的设计里,其实有很多都是照搬了yii2的,甚至一些方法名都是一摸一样的,我通过将业务逻辑从视图层中剥离,形成一个称之为数据模型(Model)的概念,模型负责了 数据的获取、格式化、校验、提交 等一系列操作,让视图层可以专注于页面展示,并在此基础上,进行各种针对场景垂直封装。 VF有一个1.0的版本,在团队内部使用,这个是当时刚开始有一个封装概念时做的,后来也维护了一段时间,渐渐的觉得其实有很多做得不合理的地方,所以才有了现在的 VF。</p>

页面列表

ITEM_HTML