【问题标题】:How to add a plugin in angularjs project如何在 angularjs 项目中添加插件
【发布时间】:2015-02-24 08:20:39
【问题描述】:

我想在我的项目中使用 Cordova facebook 插件。由于说明是针对 phonegap 完成的,所以当我必须仅在 angular 上使用它时我会感到困惑。

这就是我目前所拥有的。

1.我在脚本中添加 CordovaFacebook.js 并在 bundleConfig 中引用它。 2.我创建一个新的 service.js 文件是这样的:

'use strict';

var app = angular.module('app.FacebookService', []); // extend the app

var plugin = new CC.CordovaFacebook();

app.factory('FacebookService', [ 'plugin', function(plugin) {

plugin.init('1111111111', 'Cordova',
    ['public_profile', 'email', 'publish_actions'],
    function(response) {
        if (response) {
            console.log("Access token is: " + response.accessToken);
            console.log("Expires: " + response.expirationDate);
            console.log("Permissions are: " + response.permissions);
        }
    }, failureCallback);


    plugin.login(function(response) {
        console.log("Access token is: " + response.accessToken);
        console.log("Expires: " + response.expirationDate);
        console.log("Permissions are: " + response.permissions);
    }, failureCallback);

}]);
  1. 我在 App.js 文件中添加了这个 app.service
  2. 此时我被卡住了,当我运行我的应用程序时,它显示来自CC.CordovaFacebook()CC 未定义。

请告诉我这是如何一步一步完成的。我错过了什么?

【问题讨论】:

    标签: angularjs facebook cordova plugins visual-studio-2013


    【解决方案1】:

    看起来您对 bundleConfig 的引用不包含 CordovaFacebook.js,因此您的代码抱怨在 CordovaFacebook.js 中定义的 CC 命名空间。

    如果您使用的是 Cordova,为什么不简单地从命令行尝试 cordova plugin add ... 来使用该插件?我很确定这是一个 cordova 插件(提示:我编写了这个插件)。

    【讨论】:

    • 我意识到我在引用它时犯了一个错误。但现在它抱怨未捕获的参考 module.exports = CC;
    • @Aseb:是的,我是插件的作者。我真的建议使用 cordova cli 调用来安装插件。 CC 仅用于一个目的,而不是混乱全局命名空间。异常意味着您有链接问题,我希望通过使用cordova cli 来解决。
    • 如何通过visual studio安装??
    • @Aseb: cli 安装了cordova和node.js,即使你使用vs,也可以使用命令提示符来使用cordova cli调用。没那么难,只是需要一些习惯。
    • 我实际上得到了所有的科尔多瓦文件并添加到我的解决方案中,但它不正常。至少我的项目开始了。我有一个这样的控制器:FacebookController.$inject = ['$scope', 'CordovaFacebook'];函数 FacebookController($scope, CordovaFacebook) { var plugin = new CC.CordovaFacebook();但是插件现在未定义。你建议我在哪里添加文件,在 app.js 和控制器上?
    【解决方案2】:

    解决方案是。在您的根目录上加载所有科尔多瓦文件。并参考它们。 这样 module.exports = CC;将被定义。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-03
      • 2018-12-17
      • 2017-01-31
      • 1970-01-01
      相关资源
      最近更新 更多