3

コントローラーからビューをロードする方法を理解したいですか?

例、仮説:

myFile.html
<p>{{foo}}</p>

.controller("myCtrl", function(){
    $scope.html = loadFileHere("My foo", "myFile.html");
    console.log($scope.html);
});

I'd expect the output:
<p>My foo</p>

これは可能ですか?

ありがとう!

4

1 に答える 1

2

パーシャルのロードについて話していると思いますか?コントローラーを使用してビューを実際にロードすることはありませんが、可能かもしれませんが...ルートを使用してビューをロードします。コントローラーはスコープ データを部分ビューに返し、それを ng-view div などにロードします。だから例えば…

myFile.htmlが同じディレクトリにあると仮定すると、app.js(またはそれを呼び出すもの)で:

angular.
    module('app', []).
    config(['$routeProvider', function($routeProvider) {
        $routeProvider.
        when('/myFile', { templateUrl: 'myFile.html', controller: MyCtrl }).
        otherwise({ redirectTo: '/' });
}]);

次に、おそらく controllers.js ファイルで:

function MyCtrl($scope) {
    $scope.foo = "My foo";
}

そして、あなたの myFile.html 部分で:

<p>{{foo}}</p>

そして、index.html ファイルは次のようになります。

<!doctype html>
<html ng-app="app">
<head>
    <script src="js/angular.min.js"></script>
    <script src="js/app.js"></script>
    <script src="js/controllers.js"></script>
</head>
<body>
<div ng-controller="MyCtrl">
    <div class="container">

        <div ng-view></div>

    </div> <!-- /container -->
</div>
</body>
</html>
于 2013-09-24T15:59:47.900 に答える