首页 > angularjs在和requirejs整合中报错了?

angularjs在和requirejs整合中报错了?

HTML代码:

<!DOCTYPE html>
<html lang="en" ng-app="noteApp">
<head>
    <meta charset="UTF-8">
    <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport">
    <meta content="yes" name="apple-mobile-web-app-capable">
    <meta content="black" name="apple-mobile-web-app-status-bar-style">
    <meta content="telephone=no" name="format-detection">
    <title>电子督察</title>
    <link rel="stylesheet" type="text/css" href="lib/bootstrap/dist/css/bootstrap.min.css"/>
    <script type="text/javascript" src="lib/requirejs/require.js" data-main="js/app.js"></script>
</head>
<body>
<div ng-view></div>
</body>
</html>

app.js:

requirejs.config(
    {
        baseUrl: "js",
        paths: {
            jquery: "../lib/jquery/dist/jquery.min",
            angular: "../lib/angular/angular",
            angularRoute: "../lib/angular-route/angular-route.min",
            bootstrap: "../lib/bootstrap/dist/bootstrap.min",
            domReady: "../lib/requirejs-domready/domReady"
        },
        shim: {
            "angular": {
                exports: "angular"
            },
            "angularRoute": {
                deps: ["angular"]
            },
            "bootstrap": {
            }
        }
    }
);

require(["angular", "angularRoute"], function(angular, angularRoute){
    var noteApp = angular.module("noteApp", []);
        noteApp.config(["$routeProvider", function($routeProvider){
            $routeProvider
                .when("/", {
                    templateUrl: "views/login.html",
                    controller: "LoginController"
                })
                .otherwise({
                    redirectTo: "/"
                })
        }])
});

然后就报错了!不知道该怎么办了?


我记得要调用ng的api,bootstrap来启动ng。。。(注意此bootstrap非彼bootstrap)


给你个例子:
https://github.com/tnajdek/angular-requirejs-seed

视频
Thomas Burleson Angular and RequireJS:
https://www.youtube.com/watch?v=4yulGISBF8w&index=6&list=PLw5h0DiJ-9PB-vLe3vaNFLG-cTw0Wo7fw

另外,我的个人建议,如果项目不大,完全没有必要用requireJS,就用angular1.x就行,毕竟angular1.x的module和require中的module是完全不同的。

正如上面Youtube视频中提到过:

AngularJS injects instances
RequireJS injects classes
【热门文章】
【热门文章】