虽然Ionic有很多很好的内置功能,但是有一些功能对于核心框架是没有意义的。对于这些用例,应用程序可以归结于NPM上发布的丰富的生态系统库。NPM的命令行工具可以轻松添加和管理任何其他软件包。
如果您想了解有关NPM和命令行工具的更多信息,请先阅读NPM的文档,然后再继续。
使用NPM进行安装
要将第三方库添加到应用程序,请运行以下命令:
npm install <theLibraryName> --save
例如,要安装受欢迎的Lodash库:
npm install lodash --save
npm install
将从NPM下载该库的副本并将其保存在您的应用程序的node_modules
目录中。 --save
将告诉NPM CLI在应用程序的package.json
依赖列表中添加一个条目。库现在可以使用了。
使用库
安装库后,我们必须将其导入到我们的代码中才能使用它。
导入语句可以遵循两种简单的模式:使用a named export
和使用a default export
。最好的做法是尽可能使用named export
模式。如果它不能正常工作,请回到default export
。
// named export pattern
import { myFunction } from 'theLibraryName';
...
// use the imported functionality
myFunction();
- 要么 -
// default export pattern
import myLibrary from 'theLibraryName';
...
// call the function on the object
myLibrary.myFunction();
示例和附加详细信息
Angular和Ionic组件是使用named export
模式导入的,以及标准兼容的第三方库。
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
使用named export
模式是首选且被认为是最佳实践,因为它仅导入/包含所需的库的部分。这导致更小,更快的应用程序。
在某些情况下,导入库的特定部分是不可能的。通常,对于不遵循ES2015模块标准的Node环境编写的旧版本的库就是这种情况。
在这种情况下,可以使用库,但必须使用default
导出方法导入库。
import myLib from 'theLibraryName';
myLib.myFunction();
以下是在Lodash 中调用capitalize
方法的示例。
import lodash from 'lodash';
lodash.capitalize('myStringToCapitalize');
类型定义
第三方库与Ionic一样工作,就像其他使用npm
的JavaScript项目一样。通常,这些库不具有IDE和编辑器的智能感知信息。添加类型定义将启用智能感知并确保程序的正确性。要添加库的类型定义,我们可以再次使用npm
和TypeScript社区维护的@types
命名空间。
要安装类型定义,请执行以下命令:
npm install @types/theLibraryName --save
例如,要安装Lodash的类型定义:
npm install @types/lodash --save
故障排除
使用console.dir
如果您不确定要导入的对象的“形状”,则使用console.dir
可能非常有帮助。
import lodash from 'lodash'
console.dir(lodash);
console.dir
打印出关于对象及其API的所有重要细节。
自定义构建配置
随着大多数库,所有的“只是工作”开箱即用。在极少数情况下,构建过程可能需要对构建进行更改。Ionic构建过程允许您使用自定义配置轻松扩展默认设置。