今天遇到了一个bug,虽然解决了,但是很想知道原因是什么。想在这里请教一个大佬们。我自己写了一个组件。首先我们来看代码,然后进行解释与问题叙述
<div id="d-wrp__${modalVar}" class="blureffect-dialog linkageselect-modal-wrp d-hide">
<div class="dialog-mask"></div>
<div class="linkage-modal">
<div class="modal--header cityselect-header">
<div class="left" ng-click="modalhide()">
取消
</div>
<div class="center" ng-bind="selectName || '选择地区'"></div>
<div class="right" ng-class="cancl?'ctc':'ct'" ng-click="setvalueclick()">
确定
</div>
</div>
<div class="modal-groupbtn">
<a class="modal-defaultbtn" ng-class="{active: isselected ==='0'}"
ng-click="isselected='0';openselect()" style="padding-bottom: 10px;width: 80px;
overflow: hidden;
text-overflow: ellipsis;
display: inline-block;
white-space: nowrap;"
>
{
{
province['NODEDESC'] || province['value'] || '请选择'}}
<div style="border-bottom: solid 3px #3B95F6;
width: 20px;position: absolute;
left: 43px;
margin-top: 21px;" ng-show="isselected ==='0'"> </div>
</a>
<a ng-show="province" class="modal-defaultbtn" ng-class="{active: isselected ==='1'}"
ng-click="isselected='1';openselect()" style="padding-bottom: 10px;width: 80px;
overflow: hidden;
text-overflow: ellipsis;
display: inline-block;
white-space: nowrap;"
>
{
{
city['NODEDESC'] || city['value'] || '请选择'}}
<div style="border-bottom: solid 3px #3B95F6;
width: 20px;position: absolute;
left: 141px;
margin-top: 21px;" ng-show="isselected ==='1'"> </div>
</a>
<a ng-show="city" class="modal-defaultbtn" ng-class="{active: isselected ==='2'}"
ng-click="isselected='2';openselect()" style="padding-bottom: 10px;width: 80px;
overflow: hidden;
text-overflow: ellipsis;
display: inline-block;
white-space: nowrap;"
>
{
{
county['NODEDESC'] || county['value'] || '请选择'}}
<div style="border-bottom: solid 3px #3B95F6;
width: 20px;position: absolute;
left: 240px;
margin-top: 21px;" ng-show="isselected ==='2'"> </div>
</a>
</div>
<div class="modal--body s">
<div class="modal--content">
<div class="modal-select"
ng-repeat="a in formdata track by $index"
ng-click="setvalue(a)">{
{
a['NODEDESC']||a['value']}}</div>
</div>
</div>
</div>
</div>
页面是这样
省市区3级分类,选择完省选择市然后在选择区,每次选择从新请求数据,所有的数据都是修改这个formdata但是如果是直辖市的话比如北京市东城区,省的时候选择北京市,然后请求返回一个json第一是东城区作为市级,然后点击东城区,去请求县,由于它是直辖市,只会返回东城区,这时候两次的两次的formdata第一项都相同,但是最后由于县的时候只会返回一个数据,在ios端页面并不更新,但是在安卓端就更新,这是ios什么机制导致的呢?
是因为ios在渲染的时候看他的html和text并未改变而导致他这个页面并不进行重新渲染么?
问了一个大佬说是AST的原因,但是不是特别明白。