【问题标题】:Not taking reference from node_modules while creating angular 6 from VS-2017从 VS-2017 创建角度 6 时不参考 node_modules
【发布时间】:2019-01-20 23:02:51
【问题描述】:

我使用 Visual Studio 2017 创建了一个 Angular 6 应用程序。

这是我的 Visual Studio 项目 (Angular) 的屏幕截图。

如您所见,我添加了一个名为 Todo 的新组件和 服务。 当我添加 todo.service.ts 时,我需要添加一些角度模块的引用,以便我可以使用 HttpClient、HttpHeaders、HttpParams、catchError、tap、map 功能。

但这里似乎 我无法引用 angular 模块的路径 包,我们可以在使用 cli 命令创建项目时轻松引用它,因为我们有 node_modules我们拥有所有软件包并使用以下命令导入文件的文件夹

从 '@angular/common/http' 导入 { HttpClient, HttpHeaders, HttpParams }; 从 'rxjs/operators' 导入 { catchError, tap, map };

但在 VS-2017 中,我无法引用该软件包。 它给了我一个错误,比如“找不到模块”

这是相同的屏幕截图。

请建议我在 VS-2017 中创建 Angular 项目时如何引用 Angular 包。

请注意,在引用包时没有错误,因为在使用 angular CLI 命令创建项目时可以使用相同的代码。

【问题讨论】:

    标签: asp.net angular visual-studio-2017 angular6 node-modules


    【解决方案1】:

    导航到 package.json 文件所在的目录

    运行

    npm install
    

    如果问题仍然存在

    使用 npm 安装所需的包:

    npm i <package-name> --save
    

    【讨论】:

    • OK.. 我已经尝试过了,但它无法正常工作,即使我看不到此 ClientApp 文件夹的任何更改...
    • 在package.json文件所在目录运行。
    • 我已经删除了现有的 node_module 文件夹,然后重新安装。但仍然没有运气。
    • 关闭并重新打开项目
    • 做了但没有运气:(
    【解决方案2】:

    这样做, 将 /common/http 替换为 common only

    对运营商也是如此

    【讨论】:

      【解决方案3】:

      我得到了解决方案..

      1. 您可以重命名或删除现有的 node_modules 文件夹。
      2. 然后使用 angular-cli 命令创建新项目。
      3. 然后将复制的 node_modules(步骤 2)粘贴到我的 .NET 文件夹(步骤 1)。

      现在,它开始工作了。

      谢谢大家的建议。。

      【讨论】:

        猜你喜欢
        • 2018-12-31
        • 2018-01-30
        • 2017-08-04
        • 2016-06-20
        • 1970-01-01
        • 2019-05-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多