使用 grunt 和 bower 与 Web Site 项目进行 HTML5 开发,或在 Visual Studio 2



我想为HTML5/CSS3/JavaScript单页应用程序开发构建一个自定义的PURE HTML5 Web模板,然后将其用作SPA HTML5 Web开发的起点。

Microsoft明确建议使用 Web 应用程序,但没有提供纯 HTML5 Web 应用程序模板,因此此任务留给最终用户。

我不是在问我是否应该使用 ASP.NET 网站或 ASP.NET Web 应用程序,而是在问,我可以安排什么模板配置,让我使用最现代的 HTML5 工具和工作流程,是 Web 应用程序(带有 .csproj 或 .xproj 项目文件)还是网站项目(基于文件夹的项目)?

对于开发人员需要构建纯HTML5 SPA的项目,可能使用ExtJS,或者使用Angular或等效的东西,首先选择在文件>新网站和文件>新Web应用程序之间。

如果以后我的HTML5项目可能会在以后添加一些 ASP.NET,很明显我应该选择File -> New Web应用程序,但是没有提供HTML5模板,所以我正在寻找构建自己的模板并使用它。但它应该基于什么?

对于"网站"选项,单击"新建网站文件",您将获得一个基于文件夹的项目,但没有新的 grunt/bower 支持。

我正在寻找一种方法来充分利用这两种选择。如果我单击"文件新网站",是否可以获得咕噜声/咕噜声支持?或者如果我单击"文件新项目",我可以以某种方式进行纯HTML5工作吗?

我可以

自己一起编写一个纯HTML5 Web开发.csproj +.sln项目,从一些曾经在codeplex上的例子开始,现在在GitHub上。在我看来,基于.csproj或.xproj的根目录对于纯HTML5开发的好处是:

  • 我只能指定我想在项目资源管理器中看到的文件。

  • 我可以轻松地将 ASP.NET webapi 控制器添加到我的"纯"项目中,而无需重新构建项目。

我可以使用 ASP.NET 5 (DNX) Web 应用程序模板 (.xproj) 之一,然后删除所有 C# 内容,以获得一个有效的纯 HTML5 开发模板,并保留所有新的 JavaScript grunt/bower 工具吗?还是我必须坚持使用网站(文件夹级别)项目及其Visual Studio 2005时代的网站开发功能,以进行纯HTML5 html/css/javascript开发?

更新:如果投票基于"意见"的亲密选民能够如此友善地指出我在哪里呼吁任何意见,那就太好了。我正在寻求帮助为Visual Studio开发模板,我相信这是主题,根本不是征求意见。要开发模板,您必须做出选择。 哪一个将提供最完整的HTML5工具,包括grunt和bower以及完整的javascript语法突出显示,jslint,bundle,minify等?

在开发模板时,我迄今为止的研究表明:

  • 耐心,蚱蜢,现在还为时过早。 ASP.NET Core 1.0 刚刚发布,但不包含某些元素,包括用于基本纯 HTML 5 Web 项目开发的新 .xproj 风格的项目集(名称甚至尚未公布,但让我们假设,它可能被称为核心页面),不管它是什么,使用 Visual Studio 进行纯 HTML5 开发的Microsoft"特许经营重启"Microsoft要么还不存在, 或处于内部发展的早期阶段。 如果我搬到这里,我今天能制作的任何模板都可能在三周或三个月内过时Microsoft。

  • 目前,对于可以接受它的人来说,File -> New Web 站点工作正常,我还没有找到任何技术文档说明为什么你不能使用它进行新开发,只是Microsoft警告它可能不是最佳选择,如果 File -> New Project 模板可以满足您的需求。 你可以从 ASP.NET Core 1.0今天的工作方式中看到(及时自动重新编译而无需在Core中重建 ASP.NET Core最终将网站世界的核心功能带入了WebApp世界),它的新工具和dnx和dnvm中的新.NET Core功能将最终"恢复自然的平衡",我觉得在过去的10年里,这种平衡已经被WebSite/WebApp二分法所分裂。还没有,但这是我从研究 ASP.NET Core架构中理解的核心设计元素的一部分。

  • 对于 ExtJS,Visual Studio 的 Sencha Ext JS 插件提供了一个 File -> New Web Site 选项,这工作正常。我昨天晚上下载并测试了它,它工作正常。 如果我想调用 grunt 或 bower,或捆绑和缩小,或任何其他 Web 开发工作流任务,我也可以使用外部命令提示符窗口手动执行此操作。 因此,虽然它可能不像我想要的那样闪亮,但可以完成工作。 Ext JS插件提供了完整的Ext类层次结构代码完成,以及纯HTML5(通过文件新网站)和HTML5 + ASP.NET(通过File New Project)的入门模板。 在评估他们的插件时,我最初认为没有办法在 Visual Studio 中做一个纯 HTML5 应用程序,因为我完全不知道"文件新网站"选项,并且(错误地)认为 VS 的这个区域已被弃用。

  • 对于包括.NET在内的Angular SPA开发,有这个模板,如果你想做一个纯HTML5 SPA,似乎你可以使用它,只是不写任何 ASP.NET 服务器端的东西。

  • 我可能会建议从上面链接的角度SP开发模板开始,然后修改它以减去角度并插入ExtJS,或者使用Sencha的IDE插件提供的 ASP.NET 4.6加ExtJS模板,然后从该模板中减去所有 ASP.NET 代码。 我还没有针对 ASP.NET Core 1.0 .xproj世界的入门模板建议。

  • 这应该是可能的,并且似乎很容易使用.NET Core和 ASP.NET Core作为纯HTML5开发环境工具的关键部分。特别是"dnx web"是一种有用的本地开发方式,因为它比使用IIS Express更轻量级。 使用"DNX web"(kestrel)作为纯HTML5的轻量级静态服务器进行HTML5开发,以及完整的Visual Studio 2015项目(网站或Web应用程序),或者仅使用现代Web编辑器(如Visual Studio Code)进行HTML5开发应该同样可行。

我希望其他仍然感到困惑的开发人员,就像我对Visual Studio中关于新网站和新Web应用程序长达10年的人格分裂问题一样,最终可能会在隧道尽头看到一些曙光。

更新:Q4/2016:实际上看起来VS 2015

中的双向人格分裂问题在VS 2016中会变得更糟(目前预览为VS15),因为将有三种方法打开项目,通过一个菜单项打开解决方案/csproj,通过另一个菜单项打开Web项目,并通过第三个打开文件夹。

相关内容

  • 没有找到相关文章

最新更新