我对Angular很新,但很喜欢它!我正在尝试创建一个模态对话框来显示局部视图。 ui.bootstap.modal有一个选项,用于显示要显示的局部视图的URL。我在我的应用程序模块上配置了一个如下所示的路由:
angular.module('buggy').config(['$routeProvider',
function($routeProvider) {
$routeProvider.
when('/lists', {
templateUrl: 'views/lists/list.html'
}).
when('/lists/create', {
templateUrl: 'views/lists/create.html'
}).
when('/lists/:listId', {
templateUrl: 'views/lists/partials/view.html'
}). //more stuff
我想从上面的路线中显示定义为when(/lists/:listId)
的部分模板。所以在我的控制器中,我试图像这样打开模态对话框:
$scope.showList = function (list) {
$modal.open({
templateUrl:'lists/' + list._id,
scope:$scope
});
}
模态对话框打开,但内容只是[object]
。我是否需要在服务器端定义路由,还是可以使用Angular路由返回部分?
谢谢!
答案 0 :(得分:4)
我对$ routeProvider的理解存在缺陷。我责怪多年的jQuery'n;)我现在已经开始工作了。我相信$ routeProvider返回了我的模块配置中定义的控制器实例;不是实际的模板。我改变了我的代码:
$scope.showList = function (list) {
$scope.currentList = list;
$modal.open({
templateUrl: 'views/lists/modals/view.html',
backdrop: false,
scope: $scope,
controller: 'modalCtrl'
});
}
如果这不是一个好的解决方案..请评论。我还有很多关于Angular的知识。
谢谢!