Questions tagged «angularjs»

用于有关开源JavaScript框架AngularJS(1.x)的问题。不要将此标签用于Angular 2或更高版本;而是使用[angular]标签。

6
绑定为空/未定义(带过滤器)时的Angularjs模板默认值
我有一个模板绑定,使用Angular的日期过滤器显示名为“ date”的模型属性,该属性是一个日期。 <span class="gallery-date">{{gallery.date | date:'mediumDate'}}</span> 到目前为止,一切都很好。但是,目前,如果日期字段中没有值,则绑定不显示任何内容。但是,如果没有日期,我希望它显示字符串“ Various”。 我可以使用二进制运算符获取基本逻辑: <span class="gallery-date">{{gallery.date || 'Various'}}</span> 但是我无法使其与日期过滤器一起使用: <span class="gallery-date">{{gallery.date | date:'mediumDate' || "Various"}}</span> 如何在日期过滤器旁边使用二元运算符?

9
Angular指令中的递归
有一些流行的递归角度指令Q&A,它们都归结为以下解决方案之一: 根据运行时范围状态手动增量“编译” HTML 示例1 [ stackoverflow ] 示例2 [ angular jsfiddles页面 ] 完全不使用指令,而是引用自身的<script>模板 范例1 [ google群组 ] 第一个问题是,除非您全面地管理手动编译过程,否则无法删除以前编译的代码。第二种方法的问题是...不是指令,而是失去了其强大的功能,但是更紧迫的是,不能像指令一样对它进行参数化;它只是绑定到一个新的控制器实例。 我一直在手动执行an angular.bootstrap或@compile()in link函数,但这给我留下了手动跟踪要删除和添加的元素的问题。 有没有一种好的方法来使参数化的递归模式能够管理添加/删除元素以反映运行时状态?也就是说,具有添加/删除节点按钮和某些输入字段的树,其值向下传递到节点的子节点。也许是第二种方法与链接范围的组合(但是我不知道该怎么做)?

5
以最优雅的方式显示弹出窗口
我有这个AngularJS应用。一切正常。 现在,当满足特定条件时,我需要显示不同的弹出窗口,我想知道什么是最好的处理方式。 目前,我正在评估两个选项,但是我绝对会接受其他选项。 选项1 我可以为弹出窗口创建新的HTML元素,然后直接从控制器附加到DOM。 这将打破MVC设计模式。我对这种解决方案不满意。 选项2 我总是可以在静态HTML文件中插入所有弹出窗口的代码。然后,使用ngShow,我可以仅隐藏/显示正确的弹出窗口。 此选项不是真正可扩展的。 因此,我很确定必须有一种更好的方法来实现我想要的目标。

6
Angular HttpPromise:`success` /`error`方法和`then`的参数之间的区别
根据AngularJS doc,调用$http返回以下内容: 返回带有标准then方法和两个http特定方法的promise对象:success和error。所述然后方法有两个参数一成功以及错误回调将与响应对象被调用。的成功和错误的方法采取一个参数-一当请求成功或失败分别将被调用的函数。传递给这些函数的参数是传递给then方法的响应对象的结构化表示。 除了response在一种情况下对象被破坏的事实之外,我没有得到 成功/错误回调作为参数传递 promise.then 回调作为promise 的promise.success/ promise.error方法的参数传递 有没有?传递看似相同的回调的这两种不同方式的意义何在?
177 angularjs  promise 

14
是否可以用Angular制作树状视图?
我希望在Web应用程序中以树状结构显示数据。我希望将Angular用于此任务。 看起来ng-repeat可以让我遍历节点列表,但是当给定节点的深度增加时,该如何嵌套呢? 我尝试了以下代码,但是HTML的自动转义阻止了此操作。另外,结束ul标签放在错误的位置。 我很确定我将完全以错误的方式解决这个问题。 有任何想法吗?
177 angularjs 


10
保留angularjs中的换行符
我已经看到了这个问题。 我的代码而不是ng-bind="item.desc"使用代码,{{item.desc}}因为我ng-repeat之前有过。 所以我的代码: <div ng-repeat="item in items"> {{item.description}} </div> 项目说明包含\n未呈现的换行符。 {{item.description}}假设我已具备ng-repeat上述条件,如何轻松显示换行符?

3
何时在Angular中使用transclude'true'和transclude'element'?
什么时候应该使用transclude: 'true'以及何时transclude: 'element'?我transclude: 'element'在Angular文档中找不到任何有关它们的信息,这非常令人困惑。 如果有人可以用简单的语言解释这一点,我将很高兴。每种选择的好处是什么?它们之间的真正区别是什么? 这是我发现的: transclude: true 在编译函数中,您可以借助transclude链接函数来操作DOM,也可以使用任何HTML标记上的ngTransclude指令将已嵌入的DOM插入模板中。 和 transclude: ‘element’ 这会包含整个元素,并且在编译函数中会引入一个包含链接功能。您无法在此处访问范围,因为尚未创建范围。编译函数为该指令创建了一个链接函数,该链接函数可以访问范围,而transcludeFn可以让您触摸克隆的元素(已被嵌入)以进行DOM操作或使用绑定到其中范围的数据。供您参考,这在ng-repeat和ng-switch中使用。

6
当表单对AngularJS无效时,禁用提交按钮
我有这样的表格: <form name="myForm"> <input name="myText" type="text" ng-model="mytext" required /> <button disabled="{{ myForm.$invalid }}">Save</button> </form> 如您所见,如果输入为空,则该按钮将被禁用,但是当包含文本时,该按钮不会变回启用状态。我该如何运作?


1
访问angularjs中的单击元素
我是AngularJS的新手,怀疑我没有掌握一个概念。我也在使用Twitter Bootstrap,并且加载了jQuery。 工作流程:用户单击列表中的链接,“主”部分更新,并且链接用户单击获取活动类。 基本HTML标记: <ul class="list-holder" ng-controller="adminController"> <li><a ng-click="setMaster('client')">Clients</li> <li><a ng-click="setMaster('employees')">Employees</li> <li><a ng-click="setMaster('etc')>Etc...</li> </ul> 在jQuery中执行此操作: jQuery(".list-holder").on('click', 'a', function(event){ event.preventDefault(); jQuery(".list-holder li").removeClass('active'); jQuery(this).parent('li').addClass('active'); }); 但是我无法弄清楚如何集成Angular和jQuery以完成此操作,因为我正在使用Angular从服务器获取主列表(以JSON形式)并更新页面上的列表。 如何整合呢?进入角度控制器功能后,似乎无法找到单击的元素 控制器: function adminController($scope) { $scope.setMaster = function(obj) { // How do I get clicked element's parent li? console.log(obj); } }
173 jquery  angularjs 

12
如何使用AngularJS重定向到另一个页面?
我正在使用ajax调用在服务文件中执行功能,并且如果响应成功,我想将页面重定向到另一个URL。目前,我正在通过使用简单的js“ window.location = response ['message'];”来做到这一点。但是我需要用angularjs代码替换它。我看过关于stackoverflow的各种解决方案,他们使用了$ location。但是我是新手,对实现它有困难。 $http({ url: RootURL+'app-code/common.service.php', method: "POST", headers: {'Content-Type': 'application/x-www-form-urlencoded'}, dataType: 'json', data:data + '&method=signin' }).success(function (response) { console.log(response); if (response['code'] == '420') { $scope.message = response['message']; $scope.loginPassword = ''; } else if (response['code'] != '200'){ $scope.message = response['message']; $scope.loginPassword = ''; } else { window.location …

6
Angular.js指令动态模板URL
我在routeProvider模板中有一个需要模板的自定义标签directive。该version属性将由范围填充,然后需要正确的模板。 <hymn ver="before-{{ week }}-{{ day }}"></hymn> 根据赞美诗的星期和日期,它有多种版本。我期望使用该指令来填充正确的.html部分。不会读取变量templateUrl。 emanuel.directive('hymn', function() { var contentUrl; return { restrict: 'E', link: function(scope, element, attrs) { // concatenating the directory to the ver attr to select the correct excerpt for the day contentUrl = 'content/excerpts/hymn-' + attrs.ver + '.html'; }, // passing in contentUrl …

10
在app.config中注入服务
我想将服务注入app.config,以便可以在调用控制器之前检索数据。我这样尝试过: 服务: app.service('dbService', function() { return { getData: function($q, $http) { var defer = $q.defer(); $http.get('db.php/score/getData').success(function(data) { defer.resolve(data); }); return defer.promise; } }; }); 配置: app.config(function ($routeProvider, dbService) { $routeProvider .when('/', { templateUrl: "partials/editor.html", controller: "AppCtrl", resolve: { data: dbService.getData(), } }) }); 但是我得到这个错误: 错误:未知提供程序:EditorApp的dbService 如何更正设置并注入此服务?
168 angularjs 

1
AngularJS有什么比jQuery更好的功能?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 5年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它当前不接受新的答案或互动。 我主要使用jQuery库,并且刚开始使用AngularJS。我已经阅读了一些有关如何使用Angular的教程,但不清楚为什么使用它或何时使用它,或者与仅使用jQuery相比,我会发现什么好处。 在我看来,Angular使您想到MVC,这也许意味着您将网页视为模板+数据组合。{{data bindings}}只要有动态数据,就可以使用。然后,Angular将为您提供一个$ scope处理程序,您可以静态地或通过调用Web服务器来填充该处理程序。这看起来与JSP设计网页的方式在特征上相似。我需要Angular吗? 对于不涉及数据处理的简单DOM操作(例如,鼠标悬停时的颜色更改,单击时隐藏/显示元素),jQuery或Vanilla JS足够且简洁。这假设模型中角的MVC是什么,反映了页面上的数据,因此,CSS属性如颜色,显示/隐藏,等变化不影响模型。在DOM操作方面,Angular是否比jQuery或Vanilla JS有任何优势? 与jQuery可以与插件一起进行的工作相比,Angular可以做什么使它对开发有用?
168 jquery  angularjs 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.