单页应用程序(SPA)的构建与实现

单页应用程序(SPA)是一种在单个网页上运行的网络应用,旨在为用户提供类似于桌面应用的愉悦体验。它可以用来创建一个与数据库连接的完整商业网络应用,或者快速创建一个能够遍历、搜索和报告大型数据库的网络应用。

本文介绍的示例应用程序代码是一个不使用AngularJS、React、Vue等库的替代方案。它仅使用jQuery和Bootstrap,结合原生JavaScript、HTML和CSS。

应用程序中使用了一个非常简单的方法,通过叠加div标签和Ajax调用来读取和更新数据库,而无需任何回传。应用程序中包含的网格和详细信息表单也包含简单的CSS,使它们能够自动调整大小以适应任何移动设备,如iPhone等。使用水平和垂直滚动或滑动允许用户快速阅读所有数据列和行。

可以不断地重做父级、子级和孙级CRUD网格,只需几秒钟。

提供的演示应用程序可以从Visual Studio 2019中打开。只需按照提供的数据库脚本文件创建SQL Server数据库表即可。

应用程序可以维护和冻结大型数据库中更新或添加的记录,通过即时使更新的记录可用,即使已修改的列已排序,也可以保持记录当前可用,直到准备进行另一次搜索,从而显著提高性能。

示例应用程序是用ASP.NET Core 3.1 MVC C#和jQuery Ajax调用来编写的。安装了DotNetCore.NPOI和itext7.pdfhtml NuGet包,用于导出PDF和电子表格。

创建单页应用程序(SPA)的步骤

下载并安装SQL Server Express 2014,然后打开。右键单击“数据库”,然后选择“新建数据库”。添加一个新的数据库名称appAPP并点击“确定”。创建数据库表Names、Client_Care和Client_Mngt,使用“新建查询”。复制并粘贴下载的DBSql.sql脚本文件内容。最后点击“执行”(F5)按钮,然后刷新表格。

下载并解压示例Visual Studio解决方案,然后打开appAPP.sln解决方案(例如,appApp.zip)。appAPP项目将显示出来。打开并检查appsettings.json文件,以获取SQL Server设置。确保DefaultConnection的连接字符串正确并保存文件。

按F5运行应用程序。点击页眉中的“注册”链接。点击“注册”,输入凭据,然后点击“注册”。由于这是第一次使用数据库,将看到一个消息,要求运行迁移脚本,以创建支持用户成员代码所需的数据库对象。点击“应用迁移”按钮。会出现一个红色的错误消息。一切仍然正常。现在只需刷新网页即可。这将导致在appAPP数据库中创建正确的Identity数据库表。

再次打开Visual Studio 2019。点击页眉中的“添加/删除父级表”链接。点击“生成代码”按钮,开始构建父级表CRUD的所有代码。这只需要几秒钟。要最终看到构建的父级网格,退出浏览器,回到Visual Studio。等待项目刷新,然后再次按F5(将发生重建)。点击页眉中的“名称”链接,以显示父级屏幕。由于没有找到名称,然后点击“添加名称”按钮。输入名称字段,然后点击“保存”按钮。通过JavaScript和服务器端应用验证规则。输入3个名称记录后,将显示父级网格(名称)。网格具有完整的CRUD功能,以及导出到PDF和电子表格的功能。

现在将添加一个新的子表标签页。点击父级网格中的任何“详细信息”按钮。点击“生成代码”按钮,开始构建子表CRUD的所有代码。这只需要几秒钟。要最终看到构建的子网格,退出浏览器,回到Visual Studio。等待项目刷新,然后再次按F5(将发生重建)。点击父级网格中的任何“详细信息”按钮,以查看新的子标签页(Client_Care)。由于没有找到子(Client_Care)记录,然后点击“添加Client_Care”按钮。输入Client_Care字段,然后点击“保存”按钮。通过JavaScript和服务器端应用验证规则。输入2个Client_Care记录后,将显示子标签网格。网格具有完整的CRUD功能,以及导出到PDF和电子表格的功能。

现在将添加一个新的孙表标签页。点击子网格中的任何“详细信息”按钮。重复上述创建子表的步骤。注意:子和孙网格标签页可以根据喜好添加和删除多次。

网络应用视频 - 应用程序在行动

要点

不使用JavaScript库(如AngularJS、React、Vue等)的单页应用程序。

直接从数据库生成现代商业丰富的互联网应用程序。

可以一次又一次地添加和删除CRUD网格。

它还具有正常的浏览器后退和前进导航。

即时搜索和深入数据库中的多个表。

身份登录功能安全性。

添加和更新表单验证。

导出PDF报告和电子表格。

可以轻松更改外观和感觉。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485