5

Tôi đang sử dụng VS2012, và một trong những dự án rộng không gian tên hàm Javascript tôi có tất cả các phương pháp tiếp xúc của nó bắt đầu với dấu gạch _, ví dụ:trực quan phương pháp với gạch Studio Intellisense không xuất hiện

var NameSpace = { 
    _aMethod = function() { }, 
    _anotherMethod = function() { } 
}; 

Tôi đã tạo một tệp nhanh vsdoc cho không gian tên và chính không gian tên xuất hiện, nhưng không có phương pháp nào làm. LƯU Ý: Nếu tôi xóa _ ở đầu phương pháp, nó hoạt động như một nét duyên dáng.

// This would work, and show up in the VSDOC 
var NameSpace = { 
    aMethod = function() { }, 
    anotherMethod = function() { } 
//^notice no underscores 
}; 

Còn cách nào khác không?

Đi qua toàn bộ dự án và đổi tên chúng (ngay cả với tìm tất cả) sẽ rất nguy hiểm vì các phương pháp này hòa quyện với mọi thứ.

Trả lời

4

Nếu bạn đi vào Tools-> Options-> Text Editor-> JavaScript-> IntelliSense-> Tham khảo nên có thả xuống cho nhóm tham chiếu (tùy thuộc vào loại dự án bạn có thể cần phải thay đổi điều này)

Khi bạn có nhóm phù hợp, bạn sẽ nhận thấy có một số tệp tham chiếu intellisense mặc định. Hãy thử xóa underscorefilter.js

+0

Phát hiện, cảm ơn Bryan! –

+0

Dường như không hoạt động trong VS2013. Đã xóa tệp, các phương thức nhấn mạnh vẫn không xuất hiện. Đã thử đóng và mở lại tập tin sau đó, thậm chí đã thử khởi động lại VS, nhưng không thành công. – andrewb

+1

Lý do cho nó là "giả mạo" tài sản gạch dưới như tài sản cá nhân. Khi gọi từ "bên ngoài", dấu gạch dưới bị ẩn. Khi gọi một thuộc tính nội bộ với "this", bạn sẽ thấy các biến được nhấn mạnh. Tình cờ, chúng ta có thể vô hiệu hóa nó nếu chúng ta muốn, nhờ phản ứng @bryan. [Chủ đề khác về nó] (http://stackoverflow.com/questions/4484424/underscore-prefix-for-property-and-method-names-in-javascript) – foxontherock

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