Tôi tự hỏi liệu có thể mở rộng các phương thức của api
đối tượng ẩn danh trong đó không wp-admin/js/customize-control.js
. Tôi cần ghi đè một trong các phương thức này bằng logic tùy chỉnh của riêng mình nhưng tôi nghi ngờ điều đó là không thể vì nó được bao bọc trong một biểu thức hàm được gọi ngay lập tức:
/* globals _wpCustomizeHeader, _wpMediaViewsL10n */
(function( exports, $ ){
// code
})( wp, jQuery );
Theo như tôi có thể thấy, tôi không thể mở rộng nguyên mẫu từ đối tượng cửa sổ vì nó được thực thi ẩn danh và không có sẵn từ đó window.wp.customize
. Bất cứ ý tưởng nếu một điều như vậy là có thể? Thậm chí còn có đề cập đến việc ghi đè điều này trong tài liệu / mô tả phương thức .toggle (): https://github.com/WordPress/WordPress/blob/master/wp-admin/js/customize-controls.js#L110 , nhưng tôi 'Tôi không chắc liệu chúng có nghĩa là chỉ đơn giản là giả mạo toàn bộ tệp JS, loại bỏ phiên bản WP và mê hoặc của bạn hoặc nếu chúng có ý nghĩa hoặc một cái gì đó khác.
Lưu ý rằng có vẻ như điều đó là có thể với wp.customize.{method}.extend({ foo: // replace method foo here })
nhưng điều đó chỉ áp dụng cho các lớp / đối tượng cơ sở công cộng, không phải cho các đối tượng trongwp-admin/js/customize-control.js
wp.customize
và thêm các chức năng cho đối tượng này. xem ở đây để biết ví dụ về nguồn - github.com/bueltge/Documentation/blob/master/js/
api
là ẩn danh nhưng nó chỉ là một từ đồng nghĩa vớiwp.customize
(xem dòng 3) có thể truy cập trên toàn cầu. Tuy nhiên, có vẻ như Mô hình đối tượng Yet Another được sử dụng cho các điều khiển gọiready
hàm tronginitialize
để người ta không thể có cơ hội (tức là luôn quá muộn) để ghi đè lên các phương thức - bạn đang cố gắng mở rộng điều gì?