在我的HTML中用ng-init初始化$scope变量时出现问题
Trouble initializing a $scope variable with ng-init in my HTML
我正在尝试用ng-init
将$scope.selectedModel
初始化为model1
。然而,以下HTML无法实现这一点:
<div class="productImage">
<div class="imageGallery" ng-init="selectedModel='model1'">
<div ng-repeat="mod in pTab" ng-if="modelIsActive(mod)">
<div ng-repeat="img in mod.galleryImages">
<img class="overviewProductImage" ng-src="{{img.image}}" ng-if="productImageIsActive(img, $index)"/>
</div>
</div>
</div>
</div>
下面是使用selectedModel:的modelIsActive方法
$scope.modelIsActive = function (tab) {
return tab.model== $scope.selectedModel;
}
最终,我想使用ng-init="selectedModel= mod.model"
,但当它不起作用时,我替换了简单的字符串'model1'
,发现它仍然没有将selectedModel
初始化为该字符串。
如何使用ng init设置$scope.selectedModel
?或者我应该用别的东西?我需要使用$watch
或类似的东西吗?
如果可以的话,最好在控制器中初始化selectedModel
,而不是在HTML中使用ng-init
:该指令可能具有预期的行为。
如果你真的需要的话,你要么至少需要在控制器中定义$scope.selectedModel
,然后在ng-init中设置一个值,要么使用一个对象而不是直接使用值,比如
<div ng-init="model.selectedModel = 'model11'">
(但您仍然需要在控制器中初始化$scope.model
)
请将您的ng if放入repeat:的内部
<div ng-repeat="mod in pTab">
<div ng-repeat="img in mod.galleryImages" ng-if="modelIsActive(mod)">
相关文章:
- 简单的变量问题
- 局部全局变量问题 - JavaScript
- 递归承诺调用 - 内存范围变量问题
- 开关变量问题
- 简单的 Jquery 变量问题
- Javascript全局变量问题
- Javascript-通过引用传递变量问题
- AJAX请求在jQuery中获取函数,变量问题
- JSON JavaScript 未定义的变量问题
- PHP 和 JavaScript 组合变量问题
- JQuery Ajax 填补了 JavaScript 变量问题
- jQuery.ParseJSON 变量问题
- Ajax变量问题
- socket.io-使用命名空间时出现套接字变量问题
- AngularJS与SignalR$范围变量问题
- 使用事件处理程序(基本Javascript)时出现全局变量问题
- JavaScript 声明变量问题
- JavaScript变量问题的澄清
- jQuery变量问题
- JS -访问全局变量问题