Quantcast
Channel: Active questions tagged nuget-package - Stack Overflow
Viewing all articles
Browse latest Browse all 3067

How to include a JS file in a NuGet package

$
0
0

I need to create a .NET Standard 2.1 NuGet package that contains a JavaScript file which will be added to my consuming application in the following path:

/wwwroot/js/myFileFromNugetPackage.js

(the consuming application happens to be a Blazor Server app)

I followed one example which used a *.targets file, but it didn't work for me.

The closest I got was to set up my NuGet project as follows:

  1. Create a top level folder named "wwwroot"
  2. Add the file "wwwroot/js/myFileFromNugetPackage.js"
  3. In the properties for that JS file, set "Build Action = Content" and "Copy to Output Directory" = "Copy Always"

I publish this to my private NuGet library.

I then add that package to my Blazor (.Net Core 3.1) application.

When I look in Visual Studio's Solution Explorer, what I see looks promising:

/wwwroot/js/myFileFromNugetPackage.js

However...

If I manually create a new file in the same directory, so I now have:

/wwwroot/js/manuallyAddedFile.js /wwwroot/js/myFileFromNugetPackage.js

When I go to the properties of the two files, I see different paths:

C:{some path}\MyApplication\wwwroot\js\manuallyAddedFile.js

and

C:\Users\{me}\.nuget\packages\{myNuGetPackage}\{version}\contentFiles\any\netstandard2.1\wwwroot\js\myFileFromNugetPackage.js

And unsurprisingly, when I attempt to use either of those JS file using Blazor's JS Interop, I can use the one I manually entered, but it can't find the one from my NuGet package. The F12 developer tools show only the manually created one present on the Client.

So, my question is: How do I set up my NuGet project to write a JS file so that it ends up in the correct directory?


Viewing all articles
Browse latest Browse all 3067

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>