0

私はAngularから始めていますが、私を困惑させている奇妙な問題に悩まされています。

以下に示すように、単純なhtmlとjsがあります。BODY内の最後の行としてangular.jsファイルリンクを追加すると(ドキュメントで推奨されているように)、何らかの理由でバインディングが失敗します。同様に、HEAD でカスタム JavaScript ファイルをリンクすると、バインディングが失敗します。ここで非常に基本的なものが欠けていると確信しています。しかし、何を理解することはできません.:

HTML ファイル:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"
>
<html lang="en">
<head>
<title>Angular Binding</title>
<link rel="stylesheet" href="../Foundation/css/foundation.min.css">
<script type="text/javascript" src="../JS/angular.js"></script>
</head>
<body>
<div ng-app="myapp"> 
    <input type="text" ng-model="data.message">
        {{data.message}}
</div>
<script type="text/javascript" src="BasicFilters.js"></script>
</body>
</html>

BASICFILTERS.JS ファイル

var myapp = angular.module('myapp', [])
4

2 に答える 2

2

宣言を html タグに移動してみてください。

<html lang="en" ng-app="myapp" xmlns:ng="http://angularjs.org">
<head>[...]
于 2013-09-19T13:08:54.293 に答える
0

私はこれと同じ問題を抱えていましたが、とても残忍でした。それから、職場の開発者に助けを求め、彼に問題を見せたところ、問題が解決し始めました...

とにかく、彼が私に示した 1 つのことは、コントローラーは、グローバル スコープではなく、myApp に関連付けられた .controller 内にある必要があるということでした。

したがって、代わりに:

function MyController1($scope) {
    $scope.data = { message: "Hello World" };
}

.controller 内に配置します。

myApp.controller('MyController1', ['$scope', function($scope) {
        $scope.data = { message: "Hello World" };
    }
]);

詳細については、こちらをご覧ください。

于 2014-06-12T15:42:45.443 に答える