首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Ionic 2中使用非离子原生插件

在Ionic 2中使用非离子原生插件
EN

Stack Overflow用户
提问于 2017-02-16 06:16:21
回答 3查看 1K关注 0票数 0

我使用的是github的cordova插件,该插件在ionic原生版本中不可用。

我有问题。如何在Ionic 2中使用非离子原生插件?

我试着:

代码语言:javascript
复制
declare var myPlugin: any;

myPlugin.doSomething(...)

和其他论坛解决方案

但我有个错误:

代码语言:javascript
复制
ReferenceError: myPlugin is not defined
at new HomePage (http://localhost:8100/build/main.js:18762:9)

我的配置:

代码语言:javascript
复制
Ionic Framework: ^2.0.0-rc.3
Ionic Native: ^2.2.3
Ionic App Scripts: 1.0.0
Angular Core: 2.2.1
Angular Compiler CLI: 2.2.1
Node: 6.9.5
OS Platform: Windows 10
Navigator Platform: Win32
cordova 6.5.0

同样的问题:Working with non ionic-native plugins in Ionic 2

EN

回答 3

Stack Overflow用户

发布于 2017-02-16 17:10:30

需要注意的几件事:

  • 验证您的插件条目是否存在于plugin.xml和package.json文件中?如果没有,您可能需要添加一个条目,如下例所示。
  • 仅在平台准备就绪时使用插件。
  • 在真实设备中测试您的应用程序。
  • 使用"ionic add“而不是"cordova add”添加新插件。

请参考下面的线程,它可能会对编辑plugin.xml文件有所帮助。

https://forum.ionicframework.com/t/how-to-use-non-native-plugins-on-ionic-2/63936/17

票数 1
EN

Stack Overflow用户

发布于 2017-02-16 23:14:29

您的问题是,在plugin.xml中,clobbers被设置为window.plugins.myplugin。这使窗口成为全局对象,您必须声明:

代码语言:javascript
复制
declare var window: any;

和调用如下的函数:

代码语言:javascript
复制
window.plugins.myPlugin.pluginInitialize()

或者,如果这是您的定制插件,您可以将clobbers对象设置为myPlugin

票数 1
EN

Stack Overflow用户

发布于 2018-12-18 01:55:55

请这样尝试:

首先将插件或库导入为:

代码语言:javascript
复制
import plugin from 'plugin-name' ;

然后使用:

代码语言:javascript
复制
plugin.functionName();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42261133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档