有没有什么解决方案或角度插件可以在模型改变时进行单向绑定和重新绑定?现在我使用的是插件bind-once,但它只是在第一次绑定时就销毁了watcher。示例:
<div bindonce="model"><span bo-bind="model.title"></span></div>发布于 2014-10-31 00:28:25
Angular已经为你做了这件事
<div><span ng-bind="model.title"></span></div>或
<div><span>{{model.title}}</span></div>发布于 2014-10-31 14:49:44
如何做到这一点: re-redner(ng-if)页面上的某些变量的变化。将会发生的是,dom将被删除,并再次添加,它将再次添加: angular应该将变量绑定到它的当前值,因此通过这种方式,您可以保持绑定一次,并根据需要更新值。
您可以使用下面的reload指令(我在我的应用程序中使用它):
csapp.directive("csReloadOn", ["$timeout", "Logger", function ($timeout, logManager) {
var $log = logManager.getInstance("csReloadOn");
var getTemplate = function () {
return '<div ng-if="doRefreshPageOnModeChange"><div ng-transclude=""></div></div>';
};
var linkFunction = function (scope, element, attrs) {
scope.doRefreshPageOnModeChange = true;
scope.$watch(attrs.csReloadOn, function (newVal, oldVal) {
if (newVal === oldVal) return;
$log.info("changed mode from : " + oldVal + ", to : " + newVal);
scope.doRefreshPageOnModeChange = false;
$timeout(function () { scope.doRefreshPageOnModeChange = true; }, 100);
});
};
return {
restrict: 'A',
transclude: true,
template: getTemplate,
link: linkFunction
};
}]);https://stackoverflow.com/questions/26658304
复制相似问题