当.js文件中的单独AngularJS时,KendoUI停止工作

时间:2014-09-12 14:53:02

标签: angularjs kendo-ui

我试图用KendoUi + AngularJs做一个简单的项目。

当我使用下面的代码时,它可以正常工作:

<!DOCTYPE html>

<head>
    <title>AngularJS</title>
    <meta charset="utf-8">
    <link href="Content/kendo/2014.2.716/kendo.common.min.css" rel="stylesheet" />
    <link href="Content/kendo/2014.2.716/kendo.rtl.min.css" rel="stylesheet" />
    <link href="Content/kendo/2014.2.716/kendo.default.min.css" rel="stylesheet" />
    <script src="Scripts/kendo/2014.2.716/jquery.min.js"></script>
    <script src="Scripts/kendo/2014.2.716/angular.min.js"></script>
    <script src="Scripts/kendo.all.min.js"></script>


</head>
<body>
    <a class="offline-button" href="../index.html">Back</a>
    <div id="example" ng-app="KendoDemos">
        <div class="demo-section k-content" ng-controller="MyCtrl">
            <div class="box-col">
                <h4>Set Value</h4>
                <p>
                    <input kendo-numeric-text-box k-min="0" k-max="100" k-ng-model="value" />
                </p>
            </div>
            <div class="box-col">
                <h4>Set Value</h4>
                <div kendo-slider k-min="0" k-max="100" k-ng-model="value"></div>
            </div>
            <div class="box-col">
                <h4>Result</h4>
                Value: {{value}}

            </div>
        </div>
    </div>

    <script>
        angular.module("KendoDemos", ["kendo.directives"]);
        function MyCtrl($scope) {
            $scope.value = 50;
        }
</script>
</body>
</html>

但是,当我尝试将角度代码分离成.js文件时(如下所示),它不再起作用了:

<!DOCTYPE html>

<head>
    <title>AngularJS</title>
    <meta charset="utf-8">
    <link href="Content/kendo/2014.2.716/kendo.common.min.css" rel="stylesheet" />
    <link href="Content/kendo/2014.2.716/kendo.rtl.min.css" rel="stylesheet" />
    <link href="Content/kendo/2014.2.716/kendo.default.min.css" rel="stylesheet" />
    <script src="Scripts/kendo/2014.2.716/jquery.min.js"></script>
    <script src="Scripts/kendo/2014.2.716/angular.min.js"></script>
    <script src="Scripts/kendo.all.min.js"></script>
    <script src="Scripts/app/itensApp.js"></script> <!--ADDED-->
</head>
<body>
    <a class="offline-button" href="../index.html">Back</a>
    <div id="example" ng-app="KendoDemos">
        <div class="demo-section k-content" ng-controller="MyCtrl">
            <div class="box-col">
                <h4>Set Value</h4>
                <p>
                    <input kendo-numeric-text-box k-min="0" k-max="100" k-ng-model="value" />
                </p>
            </div>
            <div class="box-col">
                <h4>Set Value</h4>
                <div kendo-slider k-min="0" k-max="100" k-ng-model="value"></div>
            </div>
            <div class="box-col">
                <h4>Result</h4>
                Value: {{value}}

            </div>
        </div>
    </div>
</body>
</html>

脚本/ itensApp.js

(function() {
    var itensApp = angular.module('KendoDemos', ["kendo.directives"]);
}());

我做错了什么?

此致

1 个答案:

答案 0 :(得分:1)

您似乎没有将控制器添加到您的文件中。

以下是外部.js文件的代码:

angular.module("MyApp", ["kendo.directives"]);
function MyCtrl($scope) {
    $scope.value = 50;
}

这是一个有效的例子: http://plnkr.co/edit/3vRqvvvQZ8w6RRVohVdi?p=preview