AngularJS:从控制器加载视图?
我想了解如何从控制器加载视图 例如,假设:AngularJS:从控制器加载视图?,angularjs,Angularjs,我想了解如何从控制器加载视图 例如,假设: 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> myFile.html
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>
myFile.html
{{foo}}
.controller(“myCtrl”,函数(){
$scope.html=loadFileHere(“myfoo”、“myFile.html”);
log($scope.html);
});
我希望输出:
我的福
这可能吗
谢谢 我猜你是在说加载partials?你不会真的用控制器加载视图,虽然也许你可以…我会用你的路径加载视图。控制器会将作用域数据返回到局部视图,然后将其加载到ng view div或其他任何文件中。比如说 在app.js(或任何您称之为app.js的文件)中,假设您的myFile.html位于同一目录中:
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>
{{foo}
然后您的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>
您想在第一个html中添加另一个html文件。谢谢查看!我想这是一种不好的做法,但我正在努力避免在我的控制器中编写一些html。@heldrida我想我只是不明白。我上面写的控制器中没有HTML。唯一的html在索引和部分文件中。如果你不想使用分部,它也可以很容易地出现在索引中……我只是从你的第一个问题中假设这就是你要找的。@heldrida也许我理解你现在说的……我想你所说的可以通过使用指令和编译函数来实现……看看这篇文章,然后看看是否有用