【问题标题】:asp.net core 2.1 with knockoutasp.net core 2.1 带淘汰赛
【发布时间】:2019-02-15 10:32:00
【问题描述】:

我一直在尝试自学 .NET Core 开发的细节,并且已经开始创建 Core 2.1 Web 应用程序。我什至掌握了 EF Core 的窍门,并且有一个工作的数据库上下文。但是,我很难弄清楚如何实施淘汰赛。我运行了命令

dotnet 添加 ProjectName 包 knockoutjs --version 3.4.2

(当然是我的实际项目名称),它似乎已经成功地在 Dependencies / NuGet 节点下添加了淘汰赛。点击“knockoutjs(3.4.2),可以看到文件存放的路径(好像已经存放在一个中心位置,供所有项目使用)。

我想不通的是,我如何实际引用淘汰赛 js 文件?在我之前的(非Core)项目中,就像添加一个脚本src一样简单,指向js文件路径,但我不知道那在哪里。我原以为它会出现在 wwwroot/lib 下的某个地方,但我没有看到那里列出的淘汰赛 js 文件(或其他任何地方)。我是否错过了让 js 文件显示在 wwwroot 下的步骤?

【问题讨论】:

    标签: asp.net-core knockout.js


    【解决方案1】:

    不幸的是,dotnet add package 现在只管理服务器端代码。因此,nuget/dotnet add package 安装的那些客户端软件包位于我们项目之外的某个地方,您无法在 wwwroot/ 下找到它们。

    对于那些客户端依赖,最好使用npmLibMan。顾名思义,LibMan 是 Microsoft 开发的库管理器,用于安装和使用客户端依赖项。您可以通过dotnet tool install --global Microsoft.Web.LibraryManager.Cli 安装CLI 工具

    要使用 LibMan 安装 knockoutjs,只需使用以下命令:

    libman install knockout
    

    knockout-debug.jsknockout-min.js 将在那里:

    dir wwwroot/lib/knockout
    
    Mode                LastWriteTime         Length Name
    ----                -------------         ------ ----
    -a----        9/11/2018  12:38 PM         289595 knockout-debug.js
    -a----        9/11/2018  12:38 PM          60354 knockout-min.js
    

    如果你喜欢 GUI 方式,可以参考wiki by Microsoft

    【讨论】:

    • 我安装了 libman,但是当我尝试“libman install knockout”时,它只是坐在那里,似乎被挂断了。几分钟后,我关闭了VS,重新打开并重试了它,但它仍然挂起。我什至尝试了一个全新的项目,结果相同。有任何想法吗?我可以试试 npm - 安装它的命令是什么?
    • @Kurt,要使用 LibMan cli 工具安装,只需使用普通终端(命令行、powershell),不要使用 Visual Studio 中的包管理器控制台。要使用 npm 安装,只需输入 npm i knockout ,请参阅 npmjs 此处。
    • 感谢您清除 - 我从命令提示符运行 libman 并且它工作。我看到项目根目录中甚至还有一个 libman.json。感谢您的帮助!
    猜你喜欢
    • 2020-05-06
    • 2018-01-10
    • 2012-08-05
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    • 2012-08-08
    • 1970-01-01
    • 2015-03-01
    相关资源
    最近更新 更多