Các source code giải thích điều này như sau:
/**
Returns a jQuery object for this view's element. If you pass in a selector
string, this method will return a jQuery object, using the current element
as its buffer.
For example, calling `view.$('li')` will return a jQuery object containing
all of the `li` elements inside the DOM element of this view.
@param {String} [selector] a jQuery-compatible selector string
@returns {Ember.CoreQuery} the CoreQuery object for the DOM node
*/
$: function(sel) {
return this.invokeForState('$', sel);
},
Vì vậy, để trả lời câu hỏi của bạn: không có nó không giống như $(this)
, trong đó sẽ quấn dụ xem ember trong một đối tượng jQuery ...
Đoạn đầu tiên gợi ý rằng đối tượng jQuery ($) được lưu trữ dưới dạng thuộc tính trên 'this', có thể để tránh gây ô nhiễm phạm vi toàn cầu, nhưng tôi không chắc chắn. –
Nhưng nó được thực hiện. Và nó trở lại, vì vậy nó bị xích lại. Tôi nghĩ rằng đó là hợp pháp, nhưng tôi sẽ không bao giờ nghĩ đến việc cố gắng ... – jcolebrand
hiện this.button() làm việc? Nếu vậy, 'this' là một đối tượng jquery. – MMeah