Uncaught Error: нет определенного вызова для 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 ответ

Решение

Вы импортировали pnotify, но не объявили переменную для него. + Изменить

function($ , _ , Backbone , Cart ){

в

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

Обратите внимание, что на самом деле не имеет значения, что вы называете переменной, так как вы никогда не будете ее использовать. Строго говоря, вам даже не нужно определять переменную - плагины jQuery просто живут в пространстве имен jQuery, которое вы уже определили - за исключением того, что вы используете enforceDefine = true, Но если вы удалите это свойство, вы также можете удалить свойство export в конфигурации shim. Просто убедитесь, что все модули "без экспорта" находятся в конце, после последнего модуля, который имеет настоящий экспорт.

Другие вопросы по тегам