TypeError:window.plugin在phonegap中未定义

时间:2015-05-05 04:31:28

标签: javascript jquery cordova

我正在使用cordova并尝试在本地Calander of Phone中创建活动。这是我的代码。我在Config.xml中添加了以下代码

<gap:plugin name="nl.x-services.plugins.calendar" version="4.2" />

和我的功能如下: -

function CreateEvent()
{
        alert("Start")
        var startDate = new Date(2014, 4, 31, 18, 30, 0, 0, 0); // beware: month 0 = january, 11 = december
        var endDate = new Date(2014, 4, 31, 19, 30, 0, 0, 0);
        var title = "Skype meeting With Lead";
        //var location = "myleads.html";
        var notes = "Need to do a skype meeting with the lead.";
        var success = function (message) { alert("Success: " + JSON.stringify(message)); };
        var error = function (message) { alert("Error: " + message); };
        // window.plugins.calendar.listEventsInRange(startDate,endDate,success,error);

        //  window.plugins.calendar.createCalendar(calendarName,success,error);
        window.plugins.calendar.createEvent(title, location, notes, startDate, endDate, success, error);
        alert("End")
        alert("Sucess",success)
}
$(document).ready(function () {


        $("#btnClick").bind("click", CreateEvent,false);

});

但是点击时出现错误,window.plugin未定义。

1 个答案:

答案 0 :(得分:2)

您在测试代码的是什么?

你是否在模仿android / ios设备? 在手机上调试? 将其作为localhost运行?

如果您没有在移动设备上运行它,则无法访问这些插件及其原生依赖项。

出于测试目的,您必须检查插件是否已加载。

if (window.plugins && window.plugins.calendar) {
    window.plugins.calendar.createEvent(title, location, notes, startDate, endDate, success, error);
}

您可以尝试的其他事项列表:

  1. 在deviceReady侦听器中运行代码,例如document.addEventListener(“deviceready”,function(){alert('do stuff here')},false);
  2. 重新安装插件
  3. 在Android或ios设备上模拟/运行
  4. 检查插件文档以查看它是否还有其他依赖项,例如'ngCordova'