离子应用

时间:2016-02-15 18:15:38

标签: angularjs cordova ionic-framework cordova-plugins ngcordova

我在Android上有一个Ionic应用程序,我想使用ngCordovaOauth插件添加Facebook登录功能,但我得到:

0     851065   error    Uncaught Error: [$injector:modulerr] Failed to instantiate module 
starter due to:
Error: [$injector:modulerr] Failed to instantiate module ngCordovaOauth due to:
Error: [$injector:nomod] Module 'ngCordovaOauth' is not available! You either misspelled
the module name or forgot to load it. If registering a module ensure that you specify 
the dependencies as the second argument.
....

我尝试根据here加载插件。我用bower加载插件

bower install ng-cordova-oauth -S

然后我将该行添加到 index.html

<script src="lib/ng-cordova-oauth/dist/ng-cordova-oauth.min.js"></script>

之后,我将依赖项添加到模块 app.js

angular.module('starter', ['ionic','ngMessages','ngCordova','ngCordovaOauth','ksSwiper','starter.services','starter.controllers'])

当我添加'ngCordovaOauth'时,它会给出错误。我还尝试手动下载 ng-cordova-oauth.min.js 文件并将其添加到www / js文件夹并添加

<script src="js/ng-cordova-oauth.min.js"></script> 
通过bower卸载后,

index.html 文件。这也行不通。我也尝试删除Android平台并再次添加它并且无效。

我想我会尝试一切我能做但看起来不行的。 找到ngCordovaOauth,但事实并非如此。任何帮助表示赞赏。

提前致谢。

修改

index.html:

<head>
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy" content="default-src *; script-src &apos;self&apos; &apos;unsafe-inline&apos; &apos;unsafe-eval&apos; *; style-src  &apos;self&apos; &apos;unsafe-inline&apos; *">
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">
<title></title>

<link href="lib/ionic/css/ionic.css" rel="stylesheet">
<link href="lib/swiper/dist/css/swiper.min.css" rel="stylesheet"/>
<link href="css/style.css" rel="stylesheet">

<!-- IF using Sass (run gulp sass first), then uncomment below and remove the CSS includes above
<link href="css/ionic.app.css" rel="stylesheet">
-->

<!-- ionic/angularjs js -->
<script src="lib/ionic/js/ionic.bundle.js"></script>
<script src="lib/ngCordova/dist/ng-cordova.js"></script>
<script src="lib/swiper/dist/js/swiper.js"></script>
<script src="lib/angular-swiper/dist/angular-swiper.js"></script>
<script src="js/angular-messages.js"></script> 
<script src="lib/ng-cordova-oauth/dist/ng-cordova-oauth.min.js"></script>

<!-- cordova script (this will be a 404 during development) -->
<script src="cordova.js"></script>

<!-- your app's js -->
<script src="js/app.js"></script>
<script src="js/services.js"></script>
<script src="js/controllers.js"></script>

1 个答案:

答案 0 :(得分:0)

我有同样的错误信息,虽然我确实正确安装了ng-cordova-oauth并且我没有拼错它的名字。
我的问题是我一味地复制了

<script src="../ng-cordova-oauth/dist/ng-cordova-oauth.min.js"></script>

从ng-cordova-oauth的README文件到我的index.html,而路径错了!实际上,正确的道路是您在问题中指定的道路:lib/ng-cordova-oauth/dist/ng-cordova-oauth.min.js
因此,对于任何遇到相同问题的人,我建议在ng-cordova-oauth.min.js中查看index.html的路径。