- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 VS 2015 + ASP.net vnext + Angular 2 + Typescript + gulp.js。我已经自动化了我的 scripts/**/*.ts
文件移动到 wwwroot/app
文件夹。现在我想为我的库做同样的事情,比如 Angular 2。我想要一个 gulp 进程注入(inject)
angular.js
里面index.html
在<environment names="Development">
里面节点;angular.min.js
里面index.html
在<environment names="Production">
里面节点。当然,我希望我的所有库都自动发生这种情况,而无需了解库:
<any>.min.js
(制作)<any>.js
(发展)any.js
的缩小可以由我来完成。
实际上我只需要考虑所有dependencies
在package.json
...但后来我迷路了。
我的想法可以实现吗?或者是否已经存在一个工具?还是应该将工作流程分成更多手动步骤,比如我必须复制/粘贴某个库?
或者是否可以使用 dependencies
命名并用 .js
连接然后在 node_modules
下搜索此文件文件夹...(有点老套而且不安全...)
更新
重新措辞/完善我的问题:
如何自动添加我的 npm dependencies
(不是 devDependencies
)对环境 "Development"
触发特定事件时的节点,如构建/清除/等...
最佳答案
为此有一个小标签助手,称为 asp-src-include
。
想象一下您想要包含一些 *.js 文件的情况:
<script src="/app/app.js"></script>
<script src="/app/controller/controllerA.js"></script>
<script src="/app/controller/controllerB.js"></script>
<script src="/app/service/userservice.js"></script>
等您可以将所有这些包含在一个“”标签中。
<script asp-src-include="~/app/**/*.js"></script>
因此对于生产/开发部署,您的 Razor 标记可能看起来像
<environment names="Development">
<script asp-src-include="~/app/**/*.js"></script>
</environment>
<environment names="Staging,Production">
<script asp-src-include="~/app/**/*.min.js"></script>
</environment>
为此,您需要 @addTagHelper "*, Microsoft.AspNet.Mvc.TagHelpers"
(从 RC1 或 RC2 开始,它是 '@addTagHelper *, Microsoft.AspNet.Mvc.TagHelpers' - 没有双引号 ) 声明在您的 *.cshtml
文件中或在您的 _Layout.cshtml
中。
编辑
有一个名为 gulp-npm-files
的模块做类似的事情,它将所有 *.js 文件复制到目标文件夹中。您可以在 GitHub 上查看它的来源如果您想编写自己的模块来扩展功能。
但这可能不是您想要的,因为文件夹通常包含多个文件,例如 angular2
(AngularJS 2.0) 包含许多文件(*.js 和 *.ts),但是你主要只对编译/缩小的感兴趣,可以在 angular2/bundles/*
中找到,比如 angular2.js
、angular2.min.js
或 angular.dev.js
。
特定依赖项的 package.json
没有提供有关在哪里可以找到此编译文件的信息。所以我想,除非您想将所有文件复制到 wwwroot
,否则没有办法自动执行此操作,这在我看来毫无意义,尤其是如果您想使用 asp-src-include
,因为它包含的内容没有区别,所以您希望尽量减少 wwwroot
文件夹中的 *.js 文件数。
我猜你能做的最好的事情就是通过 gulp 任务手动复制依赖项,然后使用 asp-src-include
自动将它们包含到你的 razor 生成的 html 文件中。
关于javascript - 使用 gulp 将外部库移动到 wwwroot 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35444309/
我刚刚用全新的microsoft.aspnetcore.components.webassembly(s)..更新了一个项目从v5.0.5到v5.0.10。现在,当我重新编译时,我得到以下错误:。我到
我将我的 Asp.net core Blazor WebAssembly 应用程序更新到了 .net 6。一切都很好,但是从 github 操作进行的部署不起作用并抛出此错误: ... Copying
我将我的 Asp.net core Blazor WebAssembly 应用程序更新到了 .net 6。一切都很好,但是从 github 操作进行的部署不起作用并抛出此错误: ... Copying
我有两个 ASP.NET Core MVC 项目。这两个项目在它们的 wwwroot 文件夹中有相同的文件。 我的问题:是否可以为 wwwroot 文件夹指定一个自定义位置,以便我可以在两个项目中访问
我将图像存储在文件夹名称中 “图片”不在 wwwroot 文件夹中。 所以现在我无法访问它所以我的问题是 如何访问包含图像的文件夹,而该文件夹不是 wwwroot 的子文件夹?还是必须将这些文件放在
我正在这样做,它有效,但似乎有点黑客 using (var stream = new FileStream(@"d:\home\site\wwwroot\shared\...", FileMode.O
我正在使用下面的PS脚本,它将从Nexus下载Zip文件到Jenkins从属Windows服务器。(按预期工作) 我的另一个任务是将文件从Jenkins Windows服务器位置复制到另一个Windo
我正在开发一个 ASP.NET 核心应用程序,并使用 wwwroot/文件夹加载我的 css、javascript 等。 在我的 Visual Studio 元素中,我有以下结构: 但是,当我在 Ch
我有一个具有以下结构的 ASP.NET MVC 6 项目: project/ wwwroot/ custom/ project.json 我想从 custom 中提供文件,就好像它是一个虚
我的 index.html 位于名为 wwwroot 的目录中,可以通过 locahost:5001 上的浏览器访问它。当我使用 NPM 安装一些包时,目录 node_modules 被放置在与
假设我有这样的项目结构: - AppRunner | - Apprunner.csproj | - wwwroot - Tests | - Tests
这是我第一次尝试在我的 asp.net core 5.0 应用程序中运行 docker 镜像。我在 docker 文件中添加了以下配置。 FROM mcr.microsoft.com/dotnet/a
我正在研究一个项目结构,其中多个项目服务于同一组静态文件。 在开始时,每个项目都将同时提供静态文件和 API 服务,但稍后我计划将其中的一些分成多个项目。 ProjectA 将同时提供静态文件和 AP
当我在 Visual Studio 中使用“发布”部署到 Azure Web Apps 时,wwwroot 文件夹位于何处? 创建新实例时,wwwroot 文件夹来自哪里? wwwroot 是在 Az
我使用这个代码 move_uploaded_file($file_tmp,$us_id.".jpg"); 但运行此脚本后,它没有错误,但文件没有出现在文件夹中,怎么办? 在这些之前,我在本地主机中测试
我正在尝试将 zip 文件上传到 KUDU 以用于开发 Web 应用程序,并将文件提取到 wwwroot 文件夹的根目录 我使用的网址是https://webappname.scm.azurewebs
我已经部署了我的 Node.js 应用程序,它部署在 azure 应用程序服务中问题是我无法从 wwwroot/build 读取它我的所有 node.js 文件都位于 build 文件夹内我希望 Az
在我的 ColdFusion 应用程序中,我想将图像保存在这个文件夹中的 wwwroot 之外:C:\extSite\stdImages 我在 wwwroot\WEB-INF\jrun-web.xml
只是玩了一下。 我得到了一个包含 3 个项目的 Visual Studio 解决方案。 这三个都需要。 一个项目(“一个”)是应用程序的 UI。当然,它包含 wwwroot 中的静态文件。 我想对应用
我使用这个代码 move_uploaded_file($file_tmp,$us_id.".jpg"); 但运行此脚本后,它没有错误,但文件没有出现在文件夹中,怎么办? 在这些之前,我在本地主机中测试
我是一名优秀的程序员,十分优秀!