คำถามติดแท็ก angularjs

ใช้สำหรับคำถามเกี่ยวกับ AngularJS (1.x), เฟรมเวิร์ก JavaScript แบบโอเพ่นซอร์ส อย่าใช้แท็กนี้สำหรับ Angular 2 หรือใหม่กว่า; ใช้แท็ก [angular] แทน

7
ฉันจะกำหนดค่า IIS สำหรับ URL การเขียนแอปพลิเคชัน AngularJS ในโหมด HTML5 ได้อย่างไร
ฉันมีโครงการเมล็ดพันธุ์ AngularJSและฉันได้เพิ่ม $locationProvider.html5Mode(true).hashPrefix('!'); ไปที่ไฟล์ app.js ฉันต้องการกำหนดค่า IIS 7 เพื่อกำหนดเส้นทางการร้องขอทั้งหมด http://localhost/app/index.html ดังนั้นสิ่งนี้จึงเหมาะกับฉัน ฉันจะทำสิ่งนี้ได้อย่างไร ปรับปรุง: ฉันเพิ่งค้นพบดาวน์โหลดและติดตั้งโมดูล IIS URL Rewriteหวังว่ามันจะทำให้ง่ายและชัดเจนเพื่อให้บรรลุเป้าหมายของฉัน อัปเดต 2 : ฉันเดาว่านี่จะสรุปสิ่งที่ฉันพยายามจะทำให้สำเร็จ (นำมาจากเอกสารนักพัฒนา AngularJS ): การใช้โหมดนี้ต้องมีการเขียน URL ใหม่บนฝั่งเซิร์ฟเวอร์โดยทั่วไปคุณต้องเขียนลิงค์ทั้งหมดของคุณไปยังจุดเริ่มต้นของแอปพลิเคชันของคุณ (เช่น index.html) อัปเดต 3: ฉันยังคงทำสิ่งนี้อยู่และฉันรู้ว่าฉันไม่จำเป็นต้องเปลี่ยนเส้นทาง (มีกฎที่เขียนซ้ำ) URL บางอย่างเช่น http://localhost/app/lib/angular/angular.js http://localhost/app/partials/partial1.html ดังนั้นสิ่งที่อยู่ในไดเรกทอรี css, js, lib หรือ partials จะไม่ถูกเปลี่ยนเส้นทาง ทุกอย่างอื่นจะต้องถูกเปลี่ยนเส้นทางไปที่ app / index.html ใครรู้วิธีการบรรลุนี้ได้อย่างง่ายดายโดยไม่ต้องเพิ่มกฎสำหรับทุกไฟล์เดียว? อัปเดต …

13
ทำลายโซ่สัญญาและเรียกใช้ฟังก์ชันตามขั้นตอนในห่วงโซ่ที่ขาด (ปฏิเสธ)
อัปเดต: เพื่อช่วยผู้ชมโพสต์นี้ในอนาคตฉันได้สร้างตัวอย่างคำตอบของ plumaนี้ คำถาม: เป้าหมายของฉันค่อนข้างตรงไปตรงมา step(1) .then(function() { return step(2); }, function() { stepError(1); return $q.reject(); }) .then(function() { }, function() { stepError(2); }); function step(n) { var deferred = $q.defer(); //fail on step 1 (n === 1) ? deferred.reject() : deferred.resolve(); return deferred.promise; } function stepError(n) { console.log(n); } …

7
SyntaxError: โทเค็นที่ไม่คาดคิด o ใน JSON ที่ตำแหน่ง 1
ฉันแยกวิเคราะห์ข้อมูลบางส่วนโดยใช้คลาสประเภทในคอนโทรลเลอร์ของฉันฉันได้รับข้อมูลดังนี้: { "data":{ "userList":[ { "id":1, "name":"soni" } ] }, "status":200, "config":{ "method":"POST", "transformRequest":[ null ], "transformResponse":[ null ], "url":"/home/main/module/userlist", "headers":{ "rt":"ajax", "Tenant":"Id:null", "Access-Handler":"Authorization:null", "Accept":"application/json, text/plain, */*" } }, "statusText":"OK" } ฉันพยายามจัดเก็บข้อมูลแบบนี้ var userData = _data; var newData = JSON.parse(userData).data.userList; ฉันจะแยกรายชื่อผู้ใช้เป็นตัวแปรใหม่ได้อย่างไร

9
เรียงลำดับจากมากไปน้อยตามตัวกรองวันใน AngularJs
<div class="recent" ng-repeat="reader in (filteredItems = (book.reader | orderBy: 'created_at' | limitTo: 1))"> </div> ดังนั้นหนังสือมาจากส่วนที่เหลือ api และมีผู้อ่านจำนวนมากที่แนบมา ฉันต้องการรับผู้อ่าน 'ล่าสุด' created_atข้อมูลมีค่าที่ระบุผู้ใช้เป็นที่ผ่านมา แต่รหัสด้านบนทำให้ฉันเป็นผู้อ่านที่เก่าแก่ที่สุด ดังนั้นคำสั่งจะต้องมีการผกผัน? มีวิธีการเรียงลำดับจากมากไปน้อยบ้างไหม?

5
วิธีกรองตามคุณสมบัติของวัตถุใน angularJS
ฉันกำลังพยายามสร้างตัวกรองแบบกำหนดเองใน AngularJS ที่จะกรองรายการของวัตถุตามค่าของคุณสมบัติเฉพาะ ในกรณีนี้ฉันต้องการกรองตามคุณสมบัติ "ขั้ว" (ค่าที่เป็นไปได้ของ "บวก", "เป็นกลาง", "เชิงลบ") นี่คือรหัสการทำงานของฉันที่ไม่มีตัวกรอง: HTML: <div class="total"> <h2 id="totalTitle"></h2> <div>{{tweets.length}}</div> <div id="totalPos">{{tweets.length|posFilter}}</div> <div id="totalNeut">{{tweets.length|neutFilter}}</div> <div id="totalNeg">{{tweets.length|negFilter}}</div> </div> นี่คืออาร์เรย์ "$ scope.tweets" ในรูปแบบ JSON: {{created_at: "Date", text: "tweet text", user:{name: "user name", screen_name: "user screen name", profile_image_url: "profile pic"}, retweet_count: "retweet count", polarity: "Positive"}, {created_at: "Date", …

10
มีการโพสต์เรนเดอร์ที่โพสต์สำหรับ Angular JS directive หรือไม่?
ฉันเพิ่งได้รับคำสั่งให้ดึงเทมเพลตเพื่อผนวกเข้ากับองค์ประกอบดังนี้: # CoffeeScript .directive 'dashboardTable', -> controller: lineItemIndexCtrl templateUrl: "<%= asset_path('angular/templates/line_items/dashboard_rows.html') %>" (scope, element, attrs) -> element.parent('table#line_items').dataTable() console.log 'Just to make sure this is run' # HTML <table id="line_items"> <tbody dashboard-table> </tbody> </table> ฉันยังใช้ปลั๊กอิน jQuery ชื่อ DataTables การใช้งานทั่วไปของมันเป็นเช่นนี้: $ ('table # some_id') dataTable () คุณสามารถส่งผ่านข้อมูล JSON ไปยัง dataTable () โทรเพื่อให้ข้อมูลตารางหรือคุณสามารถมีข้อมูลในหน้าแล้วและมันจะทำส่วนที่เหลือ …
139 angularjs 

9
วิธีการตั้งค่าตัวเลือกที่เลือกของตัวควบคุมรายการแบบหล่นลงโดยใช้ JS เชิงมุม
ฉันกำลังใช้ Angular JS และฉันจำเป็นต้องตั้งค่าตัวเลือกที่เลือกของตัวควบคุมรายการแบบหล่นลงโดยใช้ JS เชิงมุม ยกโทษให้ฉันถ้านี่ไร้สาระ แต่ฉันใหม่กับ Angular JS นี่คือการควบคุมรายการแบบหล่นลงของ html ของฉัน <select ng-required="item.id==8 && item.quantity > 0" name="posterVariants" ng-show="item.id==8" ng-model="item.selectedVariant" ng-change="calculateServicesSubTotal(item)" ng-options="v.name for v in variants | filter:{type:2}"> </select> หลังจากนั้นฉันก็จะได้รับประชากร <select ng-options="v.name for v in variants | filter:{type:2}" ng-change="calculateServicesSubTotal(item)" ng-model="item.selectedVariant" ng-show="item.id==8" name="posterVariants" ng-required="item.id==8 && item.quantity > 0" class="ng-pristine …

1
$ routeParams ไม่ทำงานในฟังก์ชั่นการแก้ไข
ฉันใช้เทคนิคนี้เพื่อโหลดข้อมูล ดังนั้นฉันได้สร้างฟังก์ชั่นการแก้ไขต่อไปนี้: NoteController.resolve = { note: function($routeParams, Note) { return Note.get($routeParams.key); } } ปัญหาก็คือว่า$routeParams.keyเป็นundefinedช่วงเวลาของresolveการดำเนินการฟังก์ชั่น มันถูกต้อง / ข้อผิดพลาด? ฉันจะแก้ไขได้อย่างไร
138 angularjs 

7
ทำไมและเมื่อใช้ angular.copy (สำเนาลึก)
ฉันบันทึกข้อมูลทั้งหมดที่ได้รับจากบริการโดยตรงไปยังตัวแปรท้องถิ่นตัวควบคุมหรือขอบเขต สิ่งที่ฉันคิดว่าจะถือว่าเป็นสำเนาตื้น ๆ ถูกต้องหรือไม่ Example: DataService.callFunction() .then(function(response) { $scope.example = response.data; }); เมื่อเร็ว ๆ นี้ฉันได้รับคำสั่งให้ใช้ angular.copy เพื่อสร้างสำเนาลึก $scope.example = angular.copy(response.data); อย่างไรก็ตามข้อมูลสำเนาลึกดูเหมือนว่าจะทำงานในลักษณะเดียวกันเมื่อใช้งานโดยแอปพลิเคชันเชิงมุมของฉัน มีประโยชน์ที่เฉพาะเจาะจงในการใช้สำเนาลึก (angular.copy) และคุณช่วยอธิบายพวกเขาให้ฉันได้ไหม

8
ฉันจะจัดกลุ่มข้อมูลด้วยตัวกรองเชิงมุมได้อย่างไร
ฉันมีรายชื่อผู้เล่นที่อยู่ในกลุ่มแต่ละคน ฉันจะใช้ตัวกรองเพื่อแสดงรายชื่อผู้ใช้ต่อกลุ่มได้อย่างไร [{name: 'Gene', team: 'team alpha'}, {name: 'George', team: 'team beta'}, {name: 'Steve', team: 'team gamma'}, {name: 'Paula', team: 'team beta'}, {name: 'Scruath of the 5th sector', team: 'team gamma'}]; ฉันกำลังมองหาผลลัพธ์นี้: ทีมอัลฟ่า ยีน เบต้าของทีม จอร์จ พอลล่า แกมมาของทีม สตีฟ Scruath ของภาค 5

23
ใช้อักษรตัวแรกของสตริงเป็นตัวพิมพ์ใหญ่ใน AngularJs
ฉันต้องการใช้อักษรตัวแรกของสตริงเป็นตัวพิมพ์ใหญ่ใน angularjs ตามที่ฉันใช้{{ uppercase_expression | uppercase}}มันแปลงสตริงทั้งหมดเป็นตัวพิมพ์ใหญ่

16
AngularJS: วิธีล้างพารามิเตอร์การสืบค้นใน URL
แอปพลิเคชัน My AngularJS จำเป็นต้องเข้าถึงโปรไฟล์ LinkedIn ของผู้ใช้ ในการทำเช่นนั้นฉันจำเป็นต้องเปลี่ยนเส้นทางผู้ใช้ไปยัง LinkedIn URL ซึ่งมีพารามิเตอร์ callback redirect_uri ซึ่งจะบอก LinkedIn ให้เปลี่ยนเส้นทางผู้ใช้กลับไปที่ webapp ของฉันและรวมพารามิเตอร์การสืบค้น "code" ไว้ใน URL มันเป็นโฟลว์ Oauth 2.0 แบบดั้งเดิม ทุกอย่างใช้งานได้ดียกเว้นว่า LinkedIn เปลี่ยนเส้นทางผู้ใช้กลับไปที่ URL ต่อไปนี้: http://localhost:8080/?code=XXX&state=YYY#/users/123/providers/LinkedIn/social-sites ฉันต้องการลบออก?code=XXX&state=YYYจาก URL เพื่อให้สะอาด ผู้ใช้ไม่จำเป็นต้องเห็นพารามิเตอร์ข้อความค้นหาที่ฉันได้รับจากการเปลี่ยนเส้นทาง LinkedIn ฉันพยายาม$location.absUrl($location.path() + $location.hash()).replace()แต่มันเก็บ params แบบสอบถามไว้ใน URL นอกจากนี้ผมยังไม่สามารถที่จะดึงพารามิเตอร์การค้นหาเช่น "รหัส" ($location.search()).codeโดยใช้ ดูเหมือนว่าจะมี? ก่อนหน้า # ใน URL ข้างต้นกำลังหลอกล่อเชิงมุม
135 angularjs 

13
ข้อผิดพลาด: ถึงการทำซ้ำ 10 $ Digest () แล้ว แท้ง! ด้วยเพรดิเคตการเรียงลำดับแบบไดนามิก
ฉันมีรหัสต่อไปนี้ที่ซ้ำและแสดงชื่อผู้ใช้และคะแนนของเขา: <div ng-controller="AngularCtrl" ng-app> <div ng-repeat="user in users | orderBy:predicate:reverse | limitTo:10"> <div ng-init="user.score=user.id+1"> {{user.name}} and {{user.score}} </div> </div> </div> และตัวควบคุมเชิงมุมที่สอดคล้องกัน function AngularCtrl($scope) { $scope.predicate = 'score'; $scope.reverse = true; $scope.users = [{id: 1, name: 'John'}, {id: 2, name: 'Ken'}, {id: 3, name: 'smith'}, {id: 4, name: 'kevin'}, {id: 5, …

6
เริ่มต้นการเลือกด้วย AngularJS และ ng-repeat
ฉันกำลังพยายามให้ select-box เริ่มต้นด้วยตัวเลือกที่กรอกไว้ล่วงหน้าโดยใช้ ng-repeat กับ AngularJS 1.1.5 แต่การเลือกจะเริ่มต้นโดยไม่ได้เลือกไว้เสมอ นอกจากนี้ยังมีตัวเลือกว่างซึ่งฉันไม่ต้องการ ฉันคิดว่ามีผลข้างเคียงจากการไม่เลือกอะไร ฉันสามารถใช้งานได้โดยใช้ ng-options แทน ng-repeat แต่ฉันต้องการใช้ ng-repeat สำหรับกรณีนี้ แม้ว่าตัวอย่างที่แคบลงของฉันจะไม่แสดง แต่ฉันก็ต้องการตั้งค่าแอตทริบิวต์หัวเรื่องของแต่ละตัวเลือกและไม่มีวิธีใดที่จะทำได้โดยใช้ตัวเลือก ng เท่าที่ฉันรู้ ฉันไม่คิดว่าสิ่งนี้เกี่ยวข้องกับขอบเขต AngularJs ทั่วไป / ปัญหาการสืบทอดต้นแบบ อย่างน้อยฉันก็ไม่เห็นอะไรชัดเจนเมื่อตรวจสอบใน Batarang นอกจากนี้เมื่อคุณเลือกตัวเลือกในการเลือกด้วย UI โมเดลจะอัปเดตอย่างถูกต้อง นี่คือ HTML: <body ng-app ng-controller="AppCtrl"> <div> Operator is: {{filterCondition.operator}} </div> <select ng-model="filterCondition.operator"> <option ng-repeat="operator in operators" value="{{operator.value}}" > {{operator.displayName}} …

20
วิธีการกรองหลายค่า (หรือการดำเนินการ) ใน angularJS
ฉันต้องการใช้filterในเชิงมุมและต้องการกรองหลายค่าหากมีค่าใดค่าหนึ่งก็ควรจะแสดง ฉันมีตัวอย่างโครงสร้างนี้: วัตถุmovieซึ่งมีคุณสมบัติgenresและผมต้องการที่จะกรองและActionComedy ฉันรู้ว่าทำได้filter:({genres: 'Action'} || {genres: 'Comedy'})แต่จะทำอย่างไรถ้าฉันต้องการกรองแบบไดนามิก เช่นfilter: variableX ฉันจะตั้งค่าvariableXใน$scopeเมื่อฉันมีอาร์เรย์ของประเภทที่ฉันต้องกรองได้อย่างไร ฉันสามารถสร้างมันเป็นสตริงแล้วทำeval()แต่ฉันไม่ต้องการใช้ eval () ...

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.