使用Ionic和Webpack导入ngstorage时无法解析模块'angular'

hea*_*mon 4 javascript angularjs ionic-framework webpack

我正在使用Ionic与Webpack和Typescript实现一个应用程序.我通过npm安装'ngstorage'并尝试导入条目ts文件,但Webpack显示错误 - '无法解析模块'angular''.

我搜索了这个错误并意识到我需要在package.json文件和node_modules中包含angular.但是,ionic-sdk模块已经包含了角度.所以它反而在浏览器中显示一个不可接受的错误,我试图多次加载角度.

Webpack是否有办法跳过模块解析器或指向角度模块到ionic-sdk模块的路径?或者有其他建议的进口方式吗?

谢谢.

小智 6

我根本不熟悉离子,但我希望我可以帮助你.首先在文件中使用angular.在文件顶部你需要导入角度:

import angular from 'angular';
Run Code Online (Sandbox Code Playgroud)

然后我得到了两个可能对你有帮助的建议:

  1. 添加角度作为外部库

如果您确定在使用webpack创建的包之前加载了角度,则可以在webpack配置中添加角度作为外部库:

externals: [
  'angular'
]
Run Code Online (Sandbox Code Playgroud)
  1. "教"webpack在哪里寻找棱角分明

感谢resolve.alias,您可以覆盖webpack中的默认导入.因此,在您的配置文件中,您可以执行以下操作:

resolve: {
  alias: {
    angular: 'path/to/sdk/angular'
  }
}
Run Code Online (Sandbox Code Playgroud)

正如我所说,我不熟悉离子,所以我很抱歉,如果那不是你想要的:).