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

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

11
อัปเดตโมเดลเชิงมุมหลังจากตั้งค่าอินพุตด้วย jQuery
ฉันมีสถานการณ์ง่าย ๆ นี้: องค์ประกอบอินพุตซึ่งค่าจะถูกเปลี่ยนโดยวิธี val () ของ jQuery ฉันพยายามอัปเดตโมเดลเชิงมุมด้วยค่าที่ jQuery ตั้งไว้ ฉันพยายามเขียนคำสั่งง่ายๆ แต่ก็ไม่ได้ทำสิ่งที่ฉันต้องการ นี่คือคำสั่ง: var myApp = angular.module('myApp', []); myApp.directive('testChange', function() { return function(scope, element, attrs) { element.bind('change', function() { console.log('value changed'); }) } }) นี่คือส่วน jQuery: $(function(){ $('button').click(function(){ $('input').val('xxx'); }) }) และ html: <div ng-app="myApp"> <div ng-controller="MyCtrl"> <input test-change …

2
ตั้งค่าส่วนหัว HTTP สำหรับคำขอเดียว
ฉันมีคำขอหนึ่งคำขอในแอปของฉันที่ต้องมีการตรวจสอบสิทธิ์พื้นฐานดังนั้นฉันจึงจำเป็นต้องตั้งค่าหัวข้อการให้สิทธิ์สำหรับคำขอนั้น ฉันอ่านเกี่ยวกับการตั้งค่าส่วนหัวคำขอ HTTPแต่จากสิ่งที่ฉันสามารถบอกได้มันจะตั้งค่าส่วนหัวนั้นสำหรับคำขอทั้งหมดของวิธีการนั้น ฉันมีสิ่งนี้ในรหัสของฉัน: $http.defaults.headers.post.Authorization = "Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="; แต่ฉันไม่ต้องการให้คำขอโพสต์ส่งคำขอส่วนหัวนี้ทุกครั้ง มีวิธีใดที่จะส่งส่วนหัวสำหรับคำขอเดียวที่ฉันต้องการ หรือฉันต้องลบออกหลังจากที่ขอมา?

7
AngularJS vs Angular [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ปรับปรุงคำถามนี้ หลายเดือนก่อนฉันตัดสินใจเรียนเชิงมุม เมื่อฉันทำการล่วงหน้าและสร้างแอพที่ใช้มันฉันรู้ว่า Angular 2 อยู่ในหน้าตัวอย่างของนักพัฒนาดังนั้นจึงเป็นเรื่องของเวลาก่อนที่จะเปิดตัว เนื่องจาก Angular 2 จะไม่เข้ากันได้กับ Angular 1 และมีการเปลี่ยนแปลงมากมายคำถามคือจะดีกว่าหรือไม่ที่จะพัฒนาต่อไปด้วย Angular 1.x หรือเริ่มพัฒนา Angular 2 มันเป็นความจริงที่ว่าเราไม่จำเป็นต้องใช้เวอร์ชั่นล่าสุดหรือภาษาใหม่ล่าสุดในตลาดเสมอไป แต่ในกรณีนี้แอพยังมีขนาดเล็กดังนั้นฉันสามารถเปลี่ยนแปลงได้โดยไม่มีปัญหา
159 angularjs  angular 

4
การเรียงลำดับดร็อปดาวน์ตัวอักษรใน AngularJS
ฉันเติมรายการแบบหล่นลงผ่านการใช้ตัวเลือก ng- ซึ่งติดกับตัวควบคุมที่จะเรียกบริการ น่าเสียดายที่ข้อมูลที่เข้ามามีความยุ่งเหยิงและฉันจำเป็นต้องเรียงลำดับตามตัวอักษร คุณคิดว่าสิ่งที่ต้องการ$.sortByจะทำ แต่น่าเสียดายที่มันไม่ได้ทำแจ็ค ฉันรู้ว่าฉันสามารถจัดเรียงมันผ่าน javascript ด้วยวิธีผู้ช่วยเหลือfunction asc(a,b)หรืออะไรทำนองนั้น แต่ฉันปฏิเสธที่จะเชื่อว่าไม่มีวิธีที่จะทำความสะอาดได้ดีกว่านี้และฉันไม่ต้องการที่จะขยายตัวควบคุมด้วยวิธีการช่วยเหลือ มันเป็นสิ่งพื้นฐานในหลักการดังนั้นฉันจึงไม่เข้าใจว่าทำไม AngularJS ไม่มีสิ่งนี้ มีวิธีทำบางอย่างเช่น$orderBy('asc')? ตัวอย่าง: <select ng-option="items in item.$orderBy('asc')"></select> มันจะมีประโยชน์มากในการมีตัวเลือกorderByเพื่อให้คุณสามารถทำสิ่งที่คุณต้องการทุกครั้งที่คุณพยายามเรียงลำดับข้อมูล
158 angularjs 

4
AngularJS - ความแตกต่างระหว่างสิ่งที่เก่าแก่ / สกปรกและสัมผัส / แตะต้อง
คู่มือนักพัฒนา AngularJS - แบบฟอร์มบอกว่ามีหลายรูปแบบและคำสั่งเกี่ยวกับรูปแบบและเขตข้อมูล สำหรับแต่ละคลาส CSS: ng-valid ng-invalid ng-pristine ng-dirty ng-touched ng-untouched ความแตกต่างระหว่างpristine/dirtyและtouched/untouchedคืออะไร
158 angularjs 

10
angular.element เทียบกับ document.getElementById หรือตัวเลือก jQuery พร้อมตัวควบคุมการหมุน (ไม่ว่าง)
ฉันใช้การควบคุมการหมุนแบบ "เชิงมุม" ตามที่บันทึกไว้ที่นี่: http://blog.xvitcoder.com/adding-a-weel-progress-indicator-to-your-angularjs-application/ สิ่งหนึ่งที่ฉันไม่ชอบเกี่ยวกับโซลูชันที่แสดงคือการใช้ jQuery ในบริการที่แนบการควบคุมการหมุนกับองค์ประกอบ DOM อย่างมีประสิทธิภาพ ฉันต้องการใช้โครงสร้างเชิงมุมเพื่อเข้าถึงองค์ประกอบ ฉันต้องการหลีกเลี่ยง "hard-coding" id ขององค์ประกอบที่สปินเนอร์จำเป็นต้องแนบภายในบริการและใช้ directive ที่กำหนด id ในบริการ (singleton) เพื่อให้ผู้ใช้บริการรายอื่นหรือ บริการไม่จำเป็นต้องรู้ ฉันกำลังดิ้นรนกับสิ่งที่ angular.element ให้เรากับสิ่งที่ document.getElementById ในองค์ประกอบ id เดียวกันให้เรา เช่น. งานนี้: var target = document.getElementById('appBusyIndicator'); สิ่งเหล่านี้ไม่ได้ทำ: var target = angular.element('#appBusyIndicator'); var target = angular.element('appBusyIndicator'); ฉันกำลังทำสิ่งที่ชัดเจนผิดอย่างชัดเจน! ผู้ใดช่วยได้บ้าง สมมติว่าฉันสามารถทำงานได้ดังกล่าวข้างต้นฉันมีปัญหาที่คล้ายกันกับการพยายามแทนที่การเข้าถึงองค์ประกอบ jQuery: เช่น$(target).fadeIn('fast'); ทำงาน angular.element('#appBusyIndicator').fadeIn('fast')หรือangular.element('appBusyIndicator').fadeIn('fast')ไม่ …
157 jquery  angularjs 

30
ไม่สามารถค้นหาโมดูล '../build/Release/bson']: 'MODULE_NOT_FOUND'} js-bson: ไม่สามารถโหลดส่วนขยาย c ++ bson โดยใช้รุ่น JS บริสุทธิ์
ฉันได้รับข้อผิดพลาดด้านล่าง: { [Error: Cannot find module '../build/Release/bson'] code: 'MODULE_NOT_FOUND' } js-bson: Failed to load c++ bson extension, using pure JS version นี่คือรายละเอียดเวอร์ชันของฉัน: ระบบปฏิบัติการ: Windows 7 MongoDB: 2.6.5 โหนด: 0.12.0 ฉันลองสิ่งเหล่านี้ก่อนโพสต์ปัญหาที่นี่ ฉันไปที่\node-modules\mongoose\node-modules\mongodb\node-modules\bsonโฟลเดอร์และทำการเปลี่ยนแปลงด้านล่างในไฟล์ binding-gyp จาก'include_dirs': [ '<!(node -e "require(\'nan\')")' ] เป็น 'include_dirs': ["<!(nodejs -p -e \"require('path').dirname(require.resolve('nan'))\")"] เรียกใช้คำสั่งนี้ npm install -g node-gyp ฉันได้อัปเดตรุ่นพังพอนเป็น …

9
Angularjs ป้องกันการส่งแบบฟอร์มเมื่อการตรวจสอบอินพุตล้มเหลว
ฉันกำลังเขียนรูปแบบการเข้าสู่ระบบอย่างง่ายโดยใช้ angularjs กับการตรวจสอบอินพุตฝั่งไคลเอ็นต์บางส่วนเพื่อตรวจสอบว่าชื่อผู้ใช้และรหัสผ่านไม่ว่างเปล่าและยาวกว่าสามอักขระ ดูรหัสด้านล่าง: <form name="loginform" novalidate ng-submit="login.submit()" class="css-form"> <fieldset> <div class="control-group input-prepend"> <span class="add-on"><i class="icon-user"></i></span> <input type="text" ng-model="login.username" name="username" required ng-minlength="3" placeholder="username" /> </div> <div class="control-group input-prepend"> <span class="add-on"><i class="icon-lock"></i></span> <input type="password" ng-model="login.password" name="password" required ng-minlength="3" placeholder="" /> </div> <div class="control-group"> <input class="btn" type="submit" value="Log in"> </div> </fieldset> </form> …

10
วิธีการลบรายการออกจากอาร์เรย์ในขอบเขต AngularJS
รายการที่ต้องทำง่าย ๆ แต่มีปุ่มลบในหน้ารายการสำหรับแต่ละรายการ: เทมเพลต HTML ที่เกี่ยวข้อง: <tr ng-repeat="person in persons"> <td>{{person.name}} - # {{person.id}}</td> <td>{{person.description}}</td> <td nowrap=nowrap> <a href="#!/edit"><i class="icon-edit"></i></a> <button ng-click="delete(person)"><i class="icon-minus-sign"></i></button> </td> </tr> วิธีการควบคุมที่เกี่ยวข้อง: $scope.delete = function (person) { API.DeletePerson({ id: person.id }, function (success) { // I need some code here to pull the person from my …

10
Angularjs: 'controller as syntax' และ $ watch
วิธีสมัครรับข้อมูลการเปลี่ยนแปลงคุณสมบัติเมื่อใช้controller asไวยากรณ์ controller('TestCtrl', function ($scope) { this.name = 'Max'; this.changeName = function () { this.name = new Date(); } // not working $scope.$watch("name",function(value){ console.log(value) }); }); <div ng-controller="TestCtrl as test"> <input type="text" ng-model="test.name" /> <a ng-click="test.changeName()" href="#">Change Name</a> </div>

9
ฉันสามารถเข้าถึงแบบฟอร์มในคอนโทรลเลอร์ได้หรือไม่?
ฉันกำลังใช้สิ่งต่อไปนี้ $scope.$$childHead.customerForm[firstName], ดังนั้น: <form name="customerForm"> <input type="text" name="firstName" ng-model="data.customer.firstName" tabindex="1" ng-disabled="!data.editable" validationcustomer /> </form> แต่ใช้งานได้เฉพาะใน Chrome ตอนนี้ฉันพยายามต่อไปนี้: $scope.editCustomerForm[firstName], ดังนั้น: <form name="customerForm" ng-model="editCustomerForm"> <input type="text" name="firstName" ng-model="data.customer.firstName" tabindex="1" ng-disabled="!data.editable" validationcustomer /> </form> ซึ่งไม่ได้ผล หมายเหตุแบบฟอร์มของฉันอยู่ในแท็บพื้นฐาน ฉันจะเข้าถึงได้firstNameอย่างไร แก้ไข : ดูเหมือนว่าformจะไม่ถูกเพิ่มเข้าไปscopeเมื่ออยู่ในแท็บรากฐาน ใครมีวิธีแก้ปัญหานี้?

14
Angular - ui-router รับสถานะก่อนหน้า
มีวิธีรับสถานะก่อนหน้าของสถานะปัจจุบันหรือไม่ ตัวอย่างเช่นฉันต้องการทราบว่าสถานะก่อนหน้านี้คืออะไรก่อนสถานะปัจจุบัน B (โดยที่สถานะก่อนหน้านี้จะเป็นสถานะ A) ฉันไม่สามารถหามันได้ในหน้า ui-router github doc

30
js ผู้ให้บริการที่ไม่รู้จักเชิงมุม
ฉันพยายามที่จะ "ปรับแต่ง" ตัวอย่าง Mongolab ให้เหมาะกับ REST API ของฉันเอง ตอนนี้ฉันพบข้อผิดพลาดและฉันไม่แน่ใจว่าสิ่งที่ฉันทำผิด: Error: Unknown provider: ProductProvider <- Product at Error (unknown source) at http://localhost:3000/js/vendor/angular.min.js:28:395 at Object.c [as get] (http://localhost:3000/js/vendor/angular.min.js:26:180) at http://localhost:3000/js/vendor/angular.min.js:28:476 at c (http://localhost:3000/js/vendor/angular.min.js:26:180) at d (http://localhost:3000/js/vendor/angular.min.js:26:314) นี่คือตัวควบคุมของฉัน: function ProductListCtrl($scope, Product) { $scope.products = Product.query(); } และนี่คือโมดูล: angular.module('productServices', ['ngResource']). factory('Product', ['$resource', function($resource){ var …
152 angularjs 

8
ฉันจะจำลองบริการที่คืนสัญญาในการทดสอบหน่วยจัสมินของ AngularJS ได้อย่างไร
ฉันมีmyServiceสิ่งที่ใช้myOtherServiceซึ่งทำให้การโทรระยะไกลคืนสัญญา: angular.module('app.myService', ['app.myOtherService']) .factory('myService', [ myOtherService, function(myOtherService) { function makeRemoteCall() { return myOtherService.makeRemoteCallReturningPromise(); } return { makeRemoteCall: makeRemoteCall }; } ]) ในการสร้างการทดสอบหน่วยสำหรับmyServiceฉันต้องเยาะเย้ยmyOtherServiceเช่นนั้นmakeRemoteCallReturningPromiseวิธีการของมันจะให้สัญญา นี่คือวิธีที่ฉันทำ: describe('Testing remote call returning promise', function() { var myService; var myOtherServiceMock = {}; beforeEach(module('app.myService')); // I have to inject mock when calling module(), // and module() should …

8
รักษาโมเดลขอบเขตเมื่อเปลี่ยนระหว่างมุมมองใน AngularJS
ฉันกำลังเรียนรู้ AngularJS สมมติว่าฉันมี/ view1ใช้My1Ctrlและ/ view2ใช้My2Ctrl ; ที่สามารถนำทางไปยังการใช้แท็บที่แต่ละมุมมองมีรูปแบบที่เรียบง่าย แต่แตกต่างกัน ฉันจะให้แน่ใจว่าค่าที่ป้อนในรูปแบบของView1ยังไม่ได้ตั้งค่าใหม่เมื่อใบใช้แล้วกลับไปView1 ? สิ่งที่ผมหมายถึงคือวิธีการที่สองจะสามารถView1ให้รัฐเดียวกันของรูปแบบที่แน่นอนตามที่ผมออกจากมันได้หรือไม่

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