Trong Meteor tôi nhận được lỗi này cho mọi phương pháp tôi xác định trên các mặt hàng:Lỗi gọi phương pháp '': Phương pháp không tìm thấy [404]
Error invoking Method 'activeMenu': Method not found [404]
Chỉ cần làm ví dụ, trong mã của tôi, tôi đã xác định phương pháp này, như vậy:
/client/js/startup/methods.js
Meteor.methods({
...
activeMenu: function() {
if(Session.get('menu')) {
$('.menu').removeClass('active');
$('#' + Session.get('menu')).addClass('active');
}
},
...
});
và nó được gọi từ hai nơi - khi ứng dụng đầu tiên nhận được kết xuất, một nd sau router không định tuyến của nó:
client/js/rendered.js
Template.ApplicationLayout.rendered = function() {
Meteor.call('activeMenu');
}
/client/js/utils/router.js
Router.onAfterAction(function() {
Meteor.call('activeMenu');
});
Mỗi phòng trong số gọi gợi lên lỗi. Tuy nhiên, phương pháp vẫn hoạt động, tôi nhận được kết quả tôi mong đợi, vì vậy các cuộc gọi phải đã thành công, nhưng tôi vẫn gặp lỗi. Các phương thức này chỉ chạy ở phía máy khách, vì chúng chỉ dành cho các mục đích trình bày. Tôi cần chương trình không có lỗi vì tôi nghi ngờ đó là lý do tại sao spiderable
không hoạt động.
Cảm ơn bạn rất nhiều Akshat! Tôi đã có một sự hiểu lầm lớn về những gì 'Meteor.call() 'là, điều này thực sự xóa nó lên cho tôi! Cảm ơn bạn đã dành thời gian trả lời câu hỏi của tôi chi tiết như vậy và cảm ơn bạn đã dành thời gian cho tất cả các câu trả lời khác mà bạn đưa ra. – dayuloli