/ / अनकवर्ड एरर: पेनेटिफ़ के लिए कोई परिभाषित कॉल नहीं - जावास्क्रिप्ट, jquery, backbone.js, pify

असहज त्रुटि: pnotify के लिए कोई परिभाषित कॉल नहीं - जावास्क्रिप्ट, jquery, backbone.js, pnotify

main.js:

 requirejs.config({
enforceDefine: true,
paths: {
"jquery": "libs/jquery/jquery-min",
"underscore": "libs/underscore/underscore-min",
"backbone": "libs/backbone/backbone-min",
"jquery.pnotify":"libs/jquery/jquery.pnotify.min"

},
shim: {
"underscore": {
deps: [],
exports: "_"
},
"backbone": {
deps: ["jquery", "underscore"],
exports: "Backbone"
},
"jquery.pnotify" : {
deps : ["jquery"],
exports : "jQuery.fn.pnotify"
}
}
});

राय :

define(["jquery" ,
"underscore" ,
"backbone" ,
"jquery.pnotify",
"models/CartModel" ,
],function($ , _ , Backbone , Cart ){

var CartView = Backbone.View.extend({
initialize: function() {
this.updateQtyLabel("qtyCart");
},
el: ".addToCart-form",
events : {
"click #addToCart" : "addToCart"
},
addToCart : function (){
$.pnotify({
title: "Go to Cart and Check Out",
text: "1 item added to Cart",
shadow:false,
delay:1000
});
},
render: function(){

}
});
return CartView;
});

मुझे एक त्रुटि मिली Uncaught Error: No define call for jquery.pnotify.

किसी भी प्रकार की मदद की बेहद सराहना की जाती है।

उत्तर:

उत्तर № 1 के लिए 1

आपने "pnotify इम्पोर्ट किया है, लेकिन आपने" इसके लिए एक वैरिएबल घोषित नहीं किया है। परिवर्तन

function($ , _ , Backbone , Cart ){

सेवा मेरे

function($ , _ , Backbone , pnotify, Cart ){

ध्यान दें कि यह वास्तव में आपके लिए क्या मायने नहीं रखता हैचर को कॉल करें क्योंकि आप इसे कभी भी उपयोग नहीं करेंगे। कड़ाई से बोलते हुए, आपको चर को परिभाषित करने की आवश्यकता नहीं है - jQuery प्लगइन्स सिर्फ jQuery नामस्थान में रहते हैं, जिसे आपने पहले से परिभाषित किया है - सिवाय इसके कि आप उपयोग कर रहे हैं enforceDefine = true। लेकिन अगर आप उस संपत्ति को हटाने के लिए थे, तो आपशिम विन्यास पर निर्यात संपत्ति को भी हटा सकता है। बस यह सुनिश्चित करें कि कोई भी "निर्यात-कम" मॉड्यूल अंतिम मॉड्यूल के बाद अंत में हो, जिसमें एक सच्चा निर्यात हो।