-1

我正在构建一个 MEAN 应用程序。我从这个模板开始:https ://github.com/linnovate/mean

我想添加一个模块(称为 cloudinary),所以我遵循了这个:http ://cloudinary.com/documentation/node_integration#getting_started_guide (即:做了一个 npm 安装并在我的 server.js 中添加了配置)

我还在我的 bower.json 中添加了这个:

"dependencies": {
    "cloudinary": "latest",

顺便说一句,这有必要吗?我这样做是为了访问我的 public/lib 存储库中的 cloudinary js 文件。这是一个好习惯吗?我不确定,但无论如何它确实创建了一个 public/lib/cloudinary 代表。

然后我在我的 app.js 中添加了这个:

angular.module('mean.mycars', ['cloudinary']);

我将其用于直接 html 上传:http ://cloudinary.com/documentation/node_image_upload#direct_uploading_from_the_browser

所以我将此添加到我的 assets.json 文件中(将其添加到页脚中的所有页面中:

        "public/lib/cloudinary/js/jquery.min.js",
        "public/lib/cloudinary/js/jquery.ui.widget.js",
        "public/lib/cloudinary/js/jquery.iframe-transport.js",
        "public/lib/cloudinary/js/jquery.fileupload.js",
        "public/lib/cloudinary/js/jquery.cloudinary.js",

当我转到我的应用程序时,我收到此 js 错误:

Uncaught Error: [$injector:modulerr] Failed to instantiate module mean due to:
Error: [$injector:modulerr] Failed to instantiate module mean.mycars due to:
Error: [$injector:modulerr] Failed to instantiate module cloudinary due to:
Error: [$injecto...<omitted>...1) angular.js:78
(anonymous function) angular.js:78
(anonymous function) angular.js:3745
forEach angular.js:323
loadModules angular.js:3711
createInjector angular.js:3651
doBootstrap angular.js:1379
bootstrap angular.js:1394
(anonymous function) init.js:8
trigger angular.js:2445
(anonymous function) angular.js:2716
forEach angular.js:330
eventHandler

我可能忘了在某处声明一些东西,但不知道在哪里看......

4

2 回答 2

0

如果找到解决办法。我在这里将“cloudinary”声明为角度模块的问题是:

angular.module('mean.mycars', ['cloudinary']);

但它似乎不是一个角度模块。所以我把这个:

angular.module('mean.mycars', ['']);

并且错误消失了。

现在我不确定如何在我的应用程序中使用 cloudinary 来通过浏览器上传图像。看起来有点复杂。

于 2014-04-08T04:56:50.523 回答
0

我知道这个回复已经从你原来的问题中删除了几个月,但如果你已经找到了解决方案,它也许可以帮助其他人。

我目前正在努力让 Cloudinary 也可以在我的 Angular.js 应用程序中工作。据我所知,您需要在应用程序中注入“cloudinary”作为模块才能使其工作。

您需要包含两个Cloudinary 库,加载顺序很重要。看起来您已经包含了“jquery.cloudinary.js”;您还需要包含“angular.cloudinary.js”(在此处找到)。确保在“angular.js”之前调用“jquery.cloudinary.js”,在“angular.js”之后调用“angular.cloudinary.js”。cloudinary_angular 项目在 Github 上有一个有用的示例

于 2014-10-07T11:42:33.873 回答