博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在ASP.NET 5中如何方便的添加前端库
阅读量:5052 次
发布时间:2019-06-12

本文共 1861 字,大约阅读时间需要 6 分钟。

(此文章同时发表在本人微信公众号“dotNET每日精华文章”,欢迎右边二维码来关注。)

题记:ASP.NET 5和之前的ASP.NET版本有很大的不同,其中之一就是对前端库的管理不再使用Nuget,而是使用业界常用的做法——依赖Bower来管理。那么如何方便的添加前端库呢,今天就简单分享一下我的心得。

要通过Bower来添加前端库(以之前文章介绍过的MetroUI安装为例),打开项目下面的bower.json文件,在“dependencies”里面,添加一行描述:"metro": "3.0.5"。在输入包名的时候,VS会通过智能感知给出提示,包括版本号的选择也会给出。最终代码如下:

{  "name": "ASP.NET",  "private": true,  "dependencies": {    "bootstrap": "3.3.4",    "jquery": "1.10.2",    "jquery-validation": "1.11.1",    "jquery-validation-unobtrusive": "3.2.2",    "hammer.js": "2.0.4",    "bootstrap-touch-carousel": "0.8.0",    "metro": "3.0.5"  }}

添加这行后,保存bower.json文件,VS就会自动去恢复MetroUI的包。展开项目中的“dependencies”节点下的“Bower”节点,就会看到“metro (3.0.5)”的节点。根据网络情况和包大小,可能需要稍等一下,直到这个节点后面的“not installed”字样消失,就说明包恢复成功了。如果自动恢复有问题,也可以点击这个节点,从右键菜单中选择“Update Package”。

安装好的包,只是被下载到了项目文件夹中的“bower_components”文件夹中的相应文件夹。你还需要通过Gulp或者Grunt这样的任务执行器把包的发布文件copy到lib目录下(lib目录是根据VS的习惯,你也可以选择其他目录)。由于VS默认项目模板使用的是Gulp,那么就打开gulpfile.js文件,找到“copy”这个task。在“bower”里面,添加copy描述。由于MetroUI的发布文件被放到了两个文件夹下“build”和“fonts”下,所以编写copy描述需要一点技巧来处理多个文件夹的copy。具体看如下代码:

var bower = {    "bootstrap": "bootstrap/dist/**/*.{js,map,css,ttf,svg,woff,eot}",    "bootstrap-touch-carousel": "bootstrap-touch-carousel/dist/**/*.{js,css}",    "hammer.js": "hammer.js/hammer*.{js,map}",    "jquery": "jquery/jquery*.{js,map}",    "jquery-validation": "jquery-validation/jquery.validate.js",    "jquery-validation-unobtrusive": "jquery-validation-unobtrusive/jquery.validate.unobtrusive.js",    "metro": "metro/build/**/*.{js,map,css}",    "metro/fonts": "metro/fonts/*.{ttf,svg,woff,eot}"  }

完善Gulp任务代码后,还需要执行copy任务,来把metro的发布文件复制到wwwroot下面的具体文件夹下面(在本例中是lib)。执行Gulp任务可以在“Task Runner Explorer”中手动执行,也可以编译解决方案或项目来自动执行。

最后,完成前端库的安装后,就是在HTML或视图文件中引用,具体写法我就不重复了。

应该说,VS 2015和ASP.NET 5的前端开发模式,既保持了现在业界流行的常规做法,又充分发挥了Visual Studio的强大IDE功能,让大家添加前端库变得轻而易举。

转载于:https://www.cnblogs.com/redmoon/p/4541242.html

你可能感兴趣的文章
一步一步分析Caliburn.Micro框架(序)
查看>>
iOS 新浪微博-1.0框架搭建
查看>>
js中快速获取数组中的最大值最小值
查看>>
BZOJ2883 : gss2加强版
查看>>
css3控制文本多行溢出后显示省略号
查看>>
sql server 2005安装说明
查看>>
Minix
查看>>
浅议自动化测试框架 --- 之脚本分类
查看>>
DDD中Dto领域驱动设计概述,摘自《NET企业级应用架构设计》
查看>>
斯特林数、容斥和反演整理
查看>>
转载-lvs官方文档-LVS集群中的IP负载均衡技术
查看>>
桌面图标修复||桌面图标不正常
查看>>
JavaScript基础(四)关于对象及JSON
查看>>
关于js sort排序方法
查看>>
JAVA面试常见问题之Redis篇
查看>>
javascript:二叉搜索树 实现
查看>>
网络爬虫Heritrix源码分析(一) 包介绍
查看>>
[svc]线上Iptables重启报错
查看>>
请尽可能详尽的解释ajax的工作原理
查看>>
[原创]k8exe2bat任意文件转Bat工具(WebShell无法上传EXE解决方案)
查看>>