Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我能';找不到';角度';在有angularAMD的模块中?_Javascript_Angularjs_Angular Amd - Fatal编程技术网

Javascript 为什么我能';找不到';角度';在有angularAMD的模块中?

Javascript 为什么我能';找不到';角度';在有angularAMD的模块中?,javascript,angularjs,angular-amd,Javascript,Angularjs,Angular Amd,我正在与AngularAMD合作,我正在尝试“加载”angular.easypichart模块 以下是我的架构: --js ----app.js ----main.js --lib ----angular.easypiechart.js ----ngload.js 在我的main.js中,我得到了以下代码: require.config({ baseUrl: "js", paths: { 'angular': 'https://ajax.googleapis.c

我正在与AngularAMD合作,我正在尝试“加载”angular.easypichart模块

以下是我的架构:

--js
----app.js
----main.js
--lib
----angular.easypiechart.js
----ngload.js
在我的main.js中,我得到了以下代码:

require.config({
    baseUrl: "js",
    paths: {
        'angular': 'https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular',
        'angular-route': 'https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular-route',
        'angularAMD': 'https://cdn.jsdelivr.net/angular.amd/0.2/angularAMD.min',
        'ngload': '../lib/ngload',
        'easypiechart': '../lib/angular.easypiechart'
    },
    shim: {
        'angularAMD': ['angular'],
        'angular-route': ['angular'],
        'ngload': ['angularAMD'],
        'easypiechart': ['angular']
    },
    deps: ['app']
});
在我的app.js中:

define(['angularAMD', 'angular-route', 'easypiechart'], function (angularAMD) {
    'use strict';

    var app = angular.module('guess-bg', ['ngRoute']);
    // config, etc.

    return angularAMD.bootstrap(app);
});
但是
'easypiechart'
失败,我得到错误
无法读取未定义的属性“module”

我不明白,因为我在easypiechart的垫片中使用了['angular']

我试过很多东西,比如

define(['angularAMD', 'angular-route', 'ngload!easypiechart']

但是不断地出现错误。这对我来说非常模糊,我甚至不明白这个“ngload”是如何工作的。顺便说一句,我对角度路线没有任何问题

无论如何,我不知道如何简单地加载这个模块,它真的很烦人

你能告诉我我错过了什么吗

我甚至不明白这个“ngload”是怎么工作的

如果要在第一个requireJS模块中直接加载模块,则不需要
ngload
。它主要用于应用程序的延迟加载模块,例如在
/some/random/route/
中,您希望使用角度模块,但只希望在此处加载
ngload
就可以了

但是'easypiechart'失败,并且我得到了无法读取未定义的属性'module'的错误

在你的
app.js中
尝试删除
中的“严格使用”

define(['angularAMD'、'angularute'、'easypiechart'],函数(angularAMD){
var-app=angular.module('guess-bg',['ngRoute','easypiechart']);
//配置等。
返回angularAMD.bootstrap(应用程序);
});
这可能是因为您启用了
严格
模式。因此,浏览器发现
angular
对象在
app.js
中的任何位置都没有定义,因此出现了
错误,无法读取未定义的
的属性“module”

换句话说,
angular
对象是全局定义和可用的。但由于您处于严格模式,浏览器拒绝使用此类全局变量。如果仍要使用严格模式。改用
窗口。角度

define(['angularAMD'、'angularute'、'easypiechart'],函数(angularAMD){
"严格使用",;
var app=window.angular.module('guess-bg',[ngRoute','easypiechart']);
//配置等。
返回angularAMD.bootstrap(应用程序);
});

您能告诉我这个
无法读取未定义的属性'module'的确切来源吗?它是来自你的
app.js
还是来自
angular.easypiechart.js
var app = angular.module('guess-bg', ['ngRoute', 'easypiechart']);