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

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


2
AngularJS - ฉันจะอ้างอิงชื่อคุณสมบัติภายใน ng-Repeat ได้อย่างไร
นอกเหนือจากการแสดงค่าของคุณสมบัติในออบเจ็กต์แล้วฉันยังต้องการแสดงชื่อคุณสมบัติเป็นป้ายกำกับด้วย มีวิธีทำด้วยng-repeatหรือไม่? ตัวอย่างเช่น: <ul> <li ng-repeat="option in data">{{propertyName}}: {{option}}</li> </ul> ซึ่งอาจคายสิ่งนี้ออกมา: <ul> <li>Name: John</li> <li>Phone: (123) 456-7890</li> <li>Country: England</li> </ul>

11
$ ใช้แล้วเกิดข้อผิดพลาดในการดำเนินการ
ติดตามกอง: Error: $apply already in progress at Error (<anonymous>) at beginPhase (file:///android_asset/www/built.min.js:7:22740) at Object.Scope.$apply (file:///android_asset/www/built.min.js:7:25967) at navigator.geolocation.getCurrentPosition.that (file:///android_asset/www/built.min.js:13:8670) at Object.geolocation.getCurrentPosition (file:///android_asset/www/plugins/org.apache.cordova.core.geolocation/www/geolocation.js:122:13) at Object.getCurrentPosition (file:///android_asset/www/built.min.js:13:8589) at Object.getCurrentPosition (file:///android_asset/www/built.min.js:13:8277) at Object.getCurrentCity (file:///android_asset/www/built.min.js:13:8941) at Object.$scope.locateDevice (file:///android_asset/www/built.min.js:13:10480) at file:///android_asset/www/built.min.js:7:12292:7 อ้างถึงรหัสนี้http://pastebin.com/B9V6yvFu getCurrentPosition: cordovaReady(function (onSuccess, onError, options) { navigator.geolocation.getCurrentPosition(function () { var that = this, args …

9
AngularJS UI Router - เปลี่ยน url โดยไม่ต้องโหลดซ้ำ
ขณะนี้โครงการของเราใช้ค่าเริ่มต้น$routeProviderและฉันใช้ "แฮ็ก" นี้เพื่อเปลี่ยนurlโดยไม่ต้องโหลดหน้าซ้ำ: services.service('$locationEx', ['$location', '$route', '$rootScope', function($location, $route, $rootScope) { $location.skipReload = function () { var lastRoute = $route.current; var un = $rootScope.$on('$locationChangeSuccess', function () { $route.current = lastRoute; un(); }); return $location; }; return $location; }]); และใน controller $locationEx.skipReload().path("/category/" + $scope.model.id).replace(); ผมคิดว่าการเปลี่ยนrouteProviderกับui-routerเส้นทางทำรัง ui-routerแต่ลาดเทพบนี้ เป็นไปได้ - ทำเช่นเดียวกันกับangular-ui-router? ทำไมฉันถึงต้องการสิ่งนี้? ให้ฉันอธิบายด้วยตัวอย่าง: …

5
ข้อดีของการใช้ Restangular ผ่าน ngResource คืออะไร?
ngResourceแล้วดูเหมือนง่ายจริงๆที่จะใช้สิ่งที่มี ... ข้อดี / ข้อเสียของการใช้Restangularผ่านngResourceคืออะไร? 1.1.3 $resourceจะกลับสัญญาและสามารถ implimented ใช้ล่าสุดประชาสัมพันธ์กระทำ จะมีการเสนอการสนับสนุนในอนาคต$resourceเพื่อสนับสนุนคำกริยาเพิ่มเติมที่ Restangular หรือไม่? และถ้าสิ่งนั้นเกิดขึ้น Restangular ดูเหมือนว่ามันจะหายไปและไม่สัมพันธ์กัน

3
$ เฝ้าดูการเปลี่ยนแปลงข้อมูลในคำสั่งเชิงมุม
ฉันจะทริกเกอร์$watchตัวแปรในคำสั่งเชิงมุมได้อย่างไรเมื่อจัดการข้อมูลภายใน (เช่นการแทรกหรือลบข้อมูล) แต่ไม่ได้กำหนดอ็อบเจกต์ใหม่ให้กับตัวแปรนั้น ฉันมีชุดข้อมูลง่ายๆที่กำลังโหลดจากไฟล์ JSON ตัวควบคุมเชิงมุมของฉันทำสิ่งนี้รวมทั้งกำหนดฟังก์ชันบางอย่าง: App.controller('AppCtrl', function AppCtrl($scope, JsonService) { // load the initial data model if (!$scope.data) { JsonService.getData(function(data) { $scope.data = data; $scope.records = data.children.length; }); } else { console.log("I have data already... " + $scope.data); } // adds a resource to the 'data' object $scope.add = …

5
การรวบรวมสตริง HTML แบบไดนามิกจากฐานข้อมูล
สถานการณ์ ซ้อนอยู่ภายในแอป Angular ของเราเป็นคำสั่งที่เรียกว่า Page ซึ่งได้รับการสนับสนุนโดยคอนโทรลเลอร์ซึ่งมี div ที่มีแอตทริบิวต์ ng-bind-html-unsafe สิ่งนี้ถูกกำหนดให้กับ $ scope var ที่เรียกว่า 'pageContent' ตัวแปรนี้ได้รับการกำหนด HTML ที่สร้างขึ้นแบบไดนามิกจากฐานข้อมูล เมื่อผู้ใช้พลิกไปที่หน้าถัดไปจะมีการเรียกไปยังฐานข้อมูลและ pageContent var ถูกตั้งค่าเป็น HTML ใหม่นี้ซึ่งจะแสดงผลบนหน้าจอผ่าน ng-bind-html-unsafe นี่คือรหัส: คำสั่งเพจ angular.module('myApp.directives') .directive('myPage', function ($compile) { return { templateUrl: 'page.html', restrict: 'E', compile: function compile(element, attrs, transclude) { // does nothing currently return { …

8
ดาวน์โหลดไฟล์จากวิธี ASP.NET Web API โดยใช้ AngularJS
ในโครงการ Angular JS ของฉันฉันมี<a>แท็กจุดยึดซึ่งเมื่อคลิกจะGETส่งคำขอHTTP ไปยังเมธอด WebAPI ที่ส่งคืนไฟล์ ตอนนี้ฉันต้องการให้ดาวน์โหลดไฟล์ไปยังผู้ใช้เมื่อคำขอสำเร็จ ฉันจะทำอย่างไร แท็กจุดยึด: <a href="#" ng-click="getthefile()">Download img</a> AngularJS: $scope.getthefile = function () { $http({ method: 'GET', cache: false, url: $scope.appPath + 'CourseRegConfirm/getfile', headers: { 'Content-Type': 'application/json; charset=utf-8' } }).success(function (data, status) { console.log(data); // Displays text data if the file is a text …


7
วิธีการ $ http การโทรแบบซิงโครนัสกับ AngularJS
มีวิธีใดในการโทรแบบซิงโครนัสกับ AngularJS หรือไม่? เอกสาร AngularJS ไม่ชัดเจนหรือครอบคลุมมากสำหรับการหาข้อมูลพื้นฐานบางอย่าง ในการบริการ: myService.getByID = function (id) { var retval = null; $http({ url: "/CO/api/products/" + id, method: "GET" }).success(function (data, status, headers, config) { retval = data.Data; }); return retval; }
132 http  angularjs 

7
วิธีรวมมุมมอง / สไตล์เฉพาะบางส่วนใน AngularJS
อะไรคือวิธีที่เหมาะสม / ได้รับการยอมรับในการใช้สไตล์ชีตแยกต่างหากสำหรับมุมมองต่างๆที่แอปพลิเคชันของฉันใช้ ตอนนี้ฉันกำลังวางองค์ประกอบลิงก์ใน html ของมุมมอง / บางส่วนที่ด้านบน แต่ฉันได้รับแจ้งว่านี่เป็นการปฏิบัติที่ไม่ดีแม้ว่าเบราว์เซอร์ที่ทันสมัยทั้งหมดจะรองรับ แต่ฉันสามารถเห็นได้ว่าทำไมจึงขมวด ความเป็นไปได้อื่น ๆ คือการวางสไตล์ชีตแยกต่างหากใน index.html ของheadฉัน แต่ฉันต้องการให้มันโหลดสไตล์ชีตก็ต่อเมื่อมุมมองถูกโหลดในชื่อของประสิทธิภาพ นี่เป็นการปฏิบัติที่ไม่ดีเนื่องจากการจัดรูปแบบจะไม่มีผลจนกว่าจะโหลด css จากเซิร์ฟเวอร์ทำให้เกิดการแฟลชของเนื้อหาที่ไม่ได้ฟอร์แมตอย่างรวดเร็วในเบราว์เซอร์ที่ทำงานช้าหรือไม่ ฉันยังไม่เห็นสิ่งนี้แม้ว่าฉันจะทดสอบในพื้นที่ก็ตาม มีวิธีโหลด CSS ผ่านวัตถุที่ส่งไปยัง Angular $routeProvider.whenหรือไม่? ขอบคุณล่วงหน้า!

16
วิธีสร้าง ng-repeat กรองผลลัพธ์ที่ซ้ำกัน
ฉันใช้งานง่าย ng-repeatบนไฟล์ JSON และต้องการรับชื่อหมวดหมู่ มีวัตถุประมาณ 100 รายการแต่ละประเภทอยู่ในหมวดหมู่ - แต่มีเพียง 6 หมวดหมู่เท่านั้น รหัสปัจจุบันของฉันคือ: <select ng-model="orderProp" > <option ng-repeat="place in places" value="{{place.category}}">{{place.category}}</option> </select> ผลลัพธ์คือ 100 ตัวเลือกที่แตกต่างกันส่วนใหญ่ซ้ำกัน ฉันจะใช้ Angular เพื่อตรวจสอบว่า a{{place.category}}อยู่แล้วและไม่สร้างตัวเลือกหากมีอยู่แล้ว แก้ไข: ในจาวาสคริปต์ของฉัน$scope.places = JSON dataเพียงเพื่อชี้แจง

11
ขอบเขตการเข้าถึง AngularJS จากฟังก์ชัน js ภายนอก
ฉันกำลังพยายามดูว่ามีวิธีง่ายๆในการเข้าถึงขอบเขตภายในของคอนโทรลเลอร์หรือไม่ผ่านฟังก์ชั่นจาวาสคริปต์ภายนอก (ไม่เกี่ยวข้องกับตัวควบคุมเป้าหมายอย่างสมบูรณ์) ฉันเคยเห็นคำถามอื่น ๆ สองสามข้อที่นี่ angular.element("#scope").scope(); จะดึงขอบเขตจากองค์ประกอบ DOM แต่ความพยายามของฉันในขณะนี้ไม่ได้ผลลัพธ์ที่เหมาะสม นี่คือ jsfiddle: http://jsfiddle.net/sXkjc/5/ ฉันกำลังจะเปลี่ยนจาก JS ธรรมดาไปเป็น Angular เหตุผลหลักที่ฉันพยายามทำให้สำเร็จคือการรักษารหัสห้องสมุดเดิมของฉันให้สมบูรณ์มากที่สุด ประหยัดความจำเป็นสำหรับฉันในการเพิ่มแต่ละฟังก์ชันลงในคอนโทรลเลอร์ มีความคิดเห็นเกี่ยวกับวิธีที่ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร ยินดีรับฟังความคิดเห็นเกี่ยวกับซอข้างต้นด้วย

5
คุณจะทำให้ AngularJS เชื่อมโยงกับแอตทริบิวต์ title ของแท็ก A ได้อย่างไร?
จุดประสงค์คือต้องการให้ชื่อผลิตภัณฑ์ปรากฏในคำแนะนำเครื่องมือของภาพขนาดย่อ เบราว์เซอร์ไม่ได้สร้างคำแนะนำเครื่องมือจาก "ng-title" หรือ "ng-attr-title" เรากำลังใช้ AngularJS เวอร์ชัน 1.0.7 คุณสามารถต่อท้ายแอตทริบิวต์ด้วย "ng-" หรือ "ng-attr" และ Angular จะผูกตามนั้น อย่างไรก็ตามดูเหมือนว่าจะไม่ "ผูก" กับการกำหนดชื่อของแท็ก HTML "A" อดีต 1 รหัส: <a title="{{product.shortDesc}}" ...> ผลลัพธ์ที่คาดหวัง: <a title="Canon Powershot XS50 12MB Digital Camera" ...> ผลลัพธ์ที่แท้จริง: <a title="{{product.shortDesc}}" ...>เราได้รับการจัดฟันที่ไม่ต้องการในคำแนะนำเครื่องมือ อดีต 2 รหัส: <a ng-attr-title="{{product.shortDesc}}" ...> ผลลัพธ์ที่คาดหวัง: <a title="Canon Powershot …
131 angularjs 

17
ข้อผิดพลาด AngularJS: คำขอข้ามแหล่งที่มารองรับเฉพาะโครงร่างโปรโตคอล: http, data, chrome-extension, https
ฉันมีไฟล์สามไฟล์ของแอปพลิเคชั่น js เชิงมุมที่เรียบง่ายมาก index.html <!DOCTYPE html> <html ng-app="gemStore"> <head> <script src='https://ajax.googleapis.com/ajax/libs/angularjs/1.3.8/angular.min.js'></script> <script type="text/javascript" src="app.js"></script> </head> <body ng-controller="StoreController as store"> <div class="list-group-item" ng-repeat="product in store.products"> <h3>{{product.name}} <em class="pull-right">{{product.price | currency}}</em></h3> </div> <product-color></product-color> </body> </html> ผลิตภัณฑ์ color.html <div class="list-group-item"> <h3>Hello <em class="pull-right">Brother</em></h3> </div> app.js (function() { var app = angular.module('gemStore', []); app.controller('StoreController', …

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