Tôi đang sử dụng AngularJS trong dự án Ruby on Rails 3.2.8 có nội dung.Lỗi: Nhà cung cấp không xác định: aProvider <- a
Khi tôi tải lên biểu mẫu đang sử dụng AngularJS trên máy phát triển của mình, tôi không gặp vấn đề gì. Tuy nhiên khi tôi tải các hình thức tương tự lên trên máy chủ sản xuất của tôi, tôi nhận được lỗi này trong bảng điều khiển Javascript:
Error: Unknown provider: aProvider <- a
Tôi đã theo dõi nó trở lại tập tin coffeescript tôi, nơi tôi AngularJS thiết lập để sử dụng trong một hình thức:
$ (event) ->
$("#timesheet_description").autocomplete({source: '/autocomplete/work_descs'})
# Create AngularJS module
app = angular.module 'timesheetApp', []
# Create a AngularJS controller
app.controller "TimesheetCtrl", ($scope) ->
$scope.costed_amount = 0
# Bind my module to the global variables so I can use it.
angular.bootstrap document, ["timesheetApp"]
Nếu tôi nhận xét tất cả điều này, trang sẽ tải mà không có lỗi và không có khả năng AngularJS.
Vấn đề là do tài sản Rails có biên dịch và rút gọn? Có cách nào để sửa lỗi này và vẫn sử dụng tài sản coffeescript và Rails không?
Tôi nhận thấy rằng nếu '$ scope' được đổi tên, nó sẽ bị hỏng. Tôi đề nghị một cách rõ ràng tiêm '$ scope' thông qua' app.controller ('TimesheetCtrl', ['$ scope', hàm ($ scope) {...}]); '(theo cách tương đương cofeescript) Có thể có khác như vậy trường hợp, mặc dù. – Tosh
Điều đó đã sửa nó, cảm ơn bạn. – map7