您好我正在开发angularjs中的Web应用程序。我有文件上传模块。我有以下HTML代码。
<div ng-if="FilepathDL == ''">
<input type="file" file-model="attachmentDL" name="attachmentDL" class="form-control" />
</div>
<div ng-if="FilepathDL != ''">
<a ng-href="" ng-click="openfile(FilepathDL)">{{ 'View File' | translate }}</a>
</div>
在页面加载时,我没有为FilepathDL分配任何值,因此首先应该呈现ng-if语句。这种情况正在发生。提交表单后上传文件$scope.attachmentID is ""
如果我删除ng-if并直接放入,那么我收到文件。如果我将文件控制放在ng-if中,我可以知道发生了什么吗?任何帮助,将不胜感激。谢谢。
答案 0 :(得分:1)
ng-if
创建子范围。因此文件模型不直接附加到控制器范围。
您可以通过以下任何一种方法来避免此问题
ng-show
代替ng-if
有关详情,请参阅:https://github.com/angular/angular.js/wiki/Understanding-Scopes