2015-03-06 20 views
8

Một số nền ...EmberJS Đặt lại Cảnh báo: Thư viện đã được đăng ký với Ember

Chúng tôi có một ứng dụng ASP.NET mà chúng tôi đang chuyển đổi từ từ sang EmberJS. Chúng tôi có một ứng dụng Ember duy nhất mà chúng tôi khởi tạo cho một số phần nhất định của trang web. Khi chúng tôi di chuyển các trang, họ nhận được các tuyến đường trong ứng dụng Ember. Mục đích là để có mọi thứ trong Ember theo thời gian. Trong thời gian tạm thời, người dùng có thể nhấp vào các liên kết đưa họ trở lại phần ASP.NET.

Vấn đề của chúng tôi là đặt lại trạng thái của ứng dụng Ember nếu người dùng nhấp lại để quay lại Ember hoặc nhấp vào liên kết mới đưa họ trở lại phần Ember.

Chúng tôi đã thử gọi .reset trên ứng dụng, nhưng làm như vậy sẽ cho chúng tôi lỗi khi nói như sau. Ứng dụng của chúng tôi được gọi là ConsoleCli chứ không phải ứng dụng chuẩn.

Library "ConsoleCli" is already registered with Ember 

Hơn nữa, chúng tôi nhận được lỗi sau nói rằng một trong các mô-đun của chúng tôi đã được đăng ký.

Cannot re-register: `location:history-js`, as it has already been resolved. 

tôi đã cố gắng gói đăng ký của tôi về module lịch sử với một tấm séc, nhưng điều đó sẽ tạo ra một loạt toàn khác lỗi

if(!application.__container__.lookup('location:history-js')){ 
    application.register('location:history-js', HistoryJsLocation, { singleton: true }); 
} 

tôi đọc https://github.com/emberjs/ember.js/issues/10310 và tôi nghĩ rằng nó có nghĩa là thiết lập lại() có nghĩa vụ phải xóa tất cả các đăng ký khi tất cả điều này đã được sáp nhập vào các nhánh chính.

Không được gọi là App.reset() ngay giữa khi sử dụng ứng dụng EmberJS chỉ cần đặt lại không có vấn đề gì?

Xin lỗi vì sự thiếu hiểu biết của tôi, chúng tôi chỉ đang học tất cả những điều này khi chúng tôi đi.

Chúng tôi đang chạy các phiên bản sau

Ember 1.11.0-beta.2 
Ember Data 1.0.0-beta.15 
jQuery 2.0.3 

TIA!

+1

Tôi đã gặp lỗi tương tự trong bảng điều khiển khi tôi đang sử dụng App.reset() trong một số thử nghiệm tích hợp của tôi. Việc chuyển đổi từ việc sử dụng 'App.reset()' sang 'Ember.run (App, App.destroy)' đã giải quyết những vấn đề đó cho tôi. Nhưng đây là một kịch bản khác với bạn đang xử lý, vì bạn muốn đặt lại ứng dụng trong sản xuất. – jake

Trả lời

0

Tôi nghĩ rằng bạn có thể đã chạy vào lỗi này: https://github.com/emberjs/ember.js/issues/10310

Thử mutewinter sửa chữa cho thấy trong chủ đề đó, nó đã làm việc cho hầu hết mọi người (liên quan đến bản thân mình).

Các vấn đề liên quan