gpt4 book ai didi

javascript - 在 ngRoute 中使用嵌套 Controller - AngularJS

转载 作者:行者123 更新时间:2023-12-02 15:06:21 24 4
gpt4 key购买 nike

我在 main.html 中有这个:

<div ng-controller="MainCtrl">
<form ng-controller="SearchCtrl">
<input ng-model="query" ng-change="changed(query)" />
</form>
</div>

并且,index.html:

<html>
<head>
<title>Dashboard</title>
</head>
<body ng-app="MyApp">
<nav ng-controller="NavCtrl">
...
</nav>
<div ng-view></div>
</body>
</html>

而且,我的 ngRoute 配置如下:

module.config(function($routeProvider)){
$routeProvider.when('/', {
templateUrl: 'views/main.html',
controller: 'SearchCtrl'
});
}

我尝试访问 SearchCtrl.js 中的 $scope.$parent 寻找 MainCtrl$scope 但我得到未定义

我尝试更改配置中的 Controller ,但随后我无法访问 SearchCtrl。我该怎么办?

最佳答案

根据显示的结构,ng-view 内的所有内容都将位于由路由配置设置的 Controller 中......SearchCtrl

然后里面是 MainCtrl ,里面是 SearchCtrl 的另一个(新实例)

因此可能应该将路由 Controller 更改为 MainCtrl 并删除 ng-controller="MainCtrl"

module.config(function($routeProvider)){
$routeProvider.when('/', {
templateUrl: 'views/main.html',
controller: 'MainCtrl'
});
}

main.html

<div>
<form ng-controller="SearchCtrl">
<input ng-model="query" ng-change="changed(query)" />
</form>
</div>

关于javascript - 在 ngRoute 中使用嵌套 Controller - AngularJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35103648/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com