在Ionic上添加和使用插件
问题描述:
请我最后一步一步地添加和使用Ionic的插件。 我失去了几个星期试图在Ionic上使用插件,但每次我得到插件功能“未定义”。我真的需要解决这个问题,但我没有成功。在Ionic上添加和使用插件
首先,我不想使用使用特殊硬件组件(如相机)的本机插件。我按照以下步骤:
1)我用科尔多瓦
2中创建我的应用程序),我用我的添加插件:
cordova plugin add mercadopago-plugin
3)我一直插在此以下脚本我index.html的:
<script src="cordova.js"></script>
<script src="app.js"></script>
4)我创建了我的template.html按钮调用我的插件
<button ng-click="startCheckout()"> OK </button>
5)我叫我上app.js插件
.controller('MyCtrl', function($scope) {
$scope.carrinho = allcarrinho;
var publicKey = "TEST";
$scope.startCheckout = function(){
MercadoPago.startCheckout(publicKey, prefId, null, false, success, failure);
}
})
6)我一直在模仿我的管理prompt命令我在浏览器中键入应用:
ionic serve
但当插件叫我得到这个错误:
ReferenceError: MercadoPago is not defined
我下面的文档一切:
Plugin's documentation: http://mercadopago.github.io/px-hybrid/
我该如何解决它?
谢谢!
答
你可能在你的控制器注入MercadoPago:
.controller('MyCtrl', function($scope, MercadoPago /*<--here*/) {
我没看到完整的代码,但它必须是类似的东西。
或有涅槃时,它不破:
.controller('MyCtrl', ['$scope', 'MercadoPago', function($scope, MercadoPago) { ....
见this
答
大多数科尔多瓦插件不会在浏览器中运行。你应该尝试模拟器或模拟器。
要么,你需要尝试使用它
答
当您使用˝MercadoPago”这个插件使得本地电话前等待document.ready
或ionicPlatform.ready
该插件进行初始化。它不会在浏览器中运行,你应该在Android模拟器或手机运行
尝试:
ionic emulate android -l -c
,它应该工作。
我试过了,但我得到了一个新的错误: ionic.bundle.min.js:133错误:[$ injector:unpr] http://错误。 angularjs。 HTTP:// mercadopago组织/1.3.6/$injector/unpr?p0=MercadoPagoProvider%20%3C-%20MercadoPago%20%3C-%20MyCtrl 在错误(原生) – vinoli
一无所知注射是在插件文件中提到。 github.io/px-hybrid/ – vinoli
这是奇怪的。我检查了你的链接,它是西班牙文,但翻译后仍然令人困惑。也许你不应该把它注射但window.MercadoPago.startCheckout()(或文件)调用它。我不知道。你有没有检查图书馆是否被加载? – user3791775