繁体   English   中英

强制ng-include重新渲染

[英]Force ng-include to re-render

如果$ scope变量更改,我试图使ng-include重新呈现。 例。

<div ng-include src="'assets/courses/templates/editModules/'+currentEditExercise.editTemplate"></div>

我的问题是,如果currentExercise.editTemplate更改,但是它具有相同的模板文件。 它不会重新渲染,因此不会触发控制器来更新currentExercise模型。

在控制器上:

$scope.currentEditExercise = param.exercise;

在ng-include模板上:我为该模板调用子控制器。

$scope.exercise = $scope.$parent.currentEditExercise;

这是因为ng-include源被缓存了。
可以通过向模板url添加随机查询字符串来防止这种缓存:

更换:

$scope.currentEditExercise = param.exercise;

附:

$scope.currentEditExercise = param.exercise + '?r=' + Math.random();

因此,每当更改currentEditExercise ,即使param.exercise不变,完整的URL 也会改变。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM