Javascript 如何在Visual Studio 2017中使用web应用程序发布独立角度组件(njsproj)
我们有一个要求,我们需要发布我们的网站,以测试它的本地(sitecore)。我们有一个叫做webapp的特殊组件 现在,我们引入了一个新组件(njsproj文件),其中包含我们的angular应用程序。当我发布webapp时,angular代码显然没有被编译(npm install build等)并复制到webapp的工件中并发布 在我的CI CD管道中,我已将其规划好并正在运行。。。构建步骤:使用nodejs、npm安装、npm安装、ng构建Javascript 如何在Visual Studio 2017中使用web应用程序发布独立角度组件(njsproj),javascript,node.js,angular,npm,single-page-application,Javascript,Node.js,Angular,Npm,Single Page Application,我们有一个要求,我们需要发布我们的网站,以测试它的本地(sitecore)。我们有一个叫做webapp的特殊组件 现在,我们引入了一个新组件(njsproj文件),其中包含我们的angular应用程序。当我发布webapp时,angular代码显然没有被编译(npm install build等)并复制到webapp的工件中并发布 在我的CI CD管道中,我已将其规划好并正在运行。。。构建步骤:使用nodejs、npm安装、npm安装、ng构建 我如何正确设置它,以便在本地发布?有什么想法吗 您
我如何正确设置它,以便在本地发布?有什么想法吗 您可以打开njsproj内容并添加此设置
<Target Name="PublishRunWebpack" AfterTargets="ComputeFilesToPublish">
<!-- As part of publishing, ensure the JS resources are freshly built in production mode -->
<Exec WorkingDirectory="$(SpaRoot)" Command="npm install" />
<Exec WorkingDirectory="$(SpaRoot)" Command="npm run build -- --prod" />
<Exec WorkingDirectory="$(SpaRoot)" Command="npm run build:ssr -- --prod" Condition=" '$(BuildServerSideRenderer)' == 'true' " />
<!-- Include the newly-built files in the publish output -->
<ItemGroup>
<DistFiles Include="$(SpaRoot)dist\**; $(SpaRoot)dist-server\**" />
<DistFiles Include="$(SpaRoot)node_modules\**" Condition="'$(BuildServerSideRenderer)' == 'true'" />
<ResolvedFileToPublish Include="@(DistFiles->'%(FullPath)')" Exclude="@(ResolvedFileToPublish)">
<RelativePath>%(DistFiles.Identity)</RelativePath>
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</ResolvedFileToPublish>
</ItemGroup>
</Target>
但是我想你可以从创建angular应用程序开始看看这篇文章谢谢!我目前正在通过发布配置文件运行powershell解决方案。我也将评估此解决方案:)
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"build:ssr": "ng run Angular8:server:dev",
"test": "ng test", // run this command
"lint": "ng lint",
"e2e": "ng e2e"
}