【问题标题】:How to install and use NPM packages in appcelerator alloy如何在 appcelerator 合金中安装和使用 NPM 包
【发布时间】:2017-05-10 23:36:43
【问题描述】:

有人知道如何在 Alloy 项目中安装和使用 npm 包吗?

我正在尝试使用共享点模块,https://www.npmjs.com/package/sharepointconnector

我已经通过 'npm install sharepointconnector' 在各个目录中安装了它,移动到 /Resources、/app/lib 目录中,但仍然无法正常工作。大多数情况下,我会收到“在...中找不到共享点连接器”错误。

非常感谢任何帮助。

【问题讨论】:

    标签: node.js npm appcelerator appcelerator-alloy


    【解决方案1】:

    Appcelerator 不支持合金或经典应用程序的 npm 包。 Appcelerator 仅支持moduleTitanium Module Concepts。实际上,该 npm 包是基于 nodeJS 应用程序创建的。因此,您可以在 nodeJS 应用程序中使用这些包,然后创建您的自定义 API。 Alloy 或经典应用程序支持任何 Web API。

    希望你明白了。

    【讨论】:

    • 如果我理解正确,我需要使用 npm 包创建一个模块。然后,导入新创建的模块?
    • 从 SDK 6.0.0 开始,现在(在某些情况下)支持 NPM 包。 Read more here
    【解决方案2】:

    以我自己的理解,你可以使用任何不依赖于浏览器的 npm 包。

    将自己定位到文件夹myApplication/app/lib

    (如果您还没有创建lib文件夹,请在app文件夹中创建)

    然后安装你的 npm 包,我们以 validator 包为例:

    npm install validator
    

    使用库的诀窍是正确地要求它,你不能只是调用

    var validator = require('validator');
    

    如果你进入 lib 文件夹,你会发现一个 node_modules/validator 创建了它的所有依赖项,你会在里面找到文件validator.js,这就是我需要的文件。

    所以剩下要做的就是纠正要求的调用:

    var validator = require("node_modules/validator/validator");
    validator.isEmail("foo@bar.com") // returns true => happy days :)
    

    希望这有帮助

    【讨论】:

    • 就像你提到的,只有不依赖其他 js 框架的 npm 包才可以工作。
    • 好像有一个叫sharepoint Connector的模块,但只是精简版,看看有没有帮助。在市场上搜索它:marketplace.appcelerator.com
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-01
    • 2019-11-21
    • 2012-07-18
    • 1970-01-01
    • 1970-01-01
    • 2018-08-18
    • 2015-07-09
    相关资源
    最近更新 更多