gpt4 book ai didi

javascript - 两个带有 ngHide 的切换元素瞬间在屏幕上闪烁

转载 作者:行者123 更新时间:2023-11-30 16:05:28 25 4
gpt4 key购买 nike

我有几个基于范围属性显示文本的容器:

<style>
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak{
display: none !important;
}
</style>
<a ng-hide="show===false" ng-cloak>item 1</a>
<a ng-hide="show===true" ng-cloak>item 2</a>
<span ng-click="toggle()">toggle</span>
//js
var app = angular.module('appy', []);
app.controller('ctrl', function($scope){
$scope.show = false;
$scope.toggle = function(){
$scope.show = !$scope.show;
};
});

https://jsbin.com/numaxiroka/edit?html,js,output

这个简单的示例在 JSBIN 中有效,但在我的页面上,内容“item 1”和“item 2”都在屏幕上瞬间闪烁。我做错了什么会使这两个元素都短暂出现?

我一直在使用 this供引用。

最佳答案

我建议您做的第一件事是,将 ng-cloak 放在 body 上,而不是每个 anchor 上。因此,这将有助于隐藏 angular 未编译 内容 ({{}}) 以显示在 body 内的任何位置。


如果您只是想显示 anchor ,那么我会说请使用 ng-bind 来呈现它们的内部文本,如下所示

标记

<a ng-bind="show? 'item 1' : 'item 2'" href="{{myHref(show)}}"></a>

代码

$scope.myHref = function(){
if(show)
return 'something/someaction1'
else
return 'something/someaction2' ;
}

关于javascript - 两个带有 ngHide 的切换元素瞬间在屏幕上闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37120664/

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