Backbone.Marionette没有识别木偶功能

时间:2016-09-05 16:00:33

标签: node.js express backbone.js pug marionette

我有以下jade模板,其中包含Marionette(在CDN上)的链接以及所有依赖项,我已经检查过并按正确的顺序列出。但是,以下代码:

extends layout

block content
  h2 Characters and Portraits
  div(class="container") Portraits Loading...
  script(src="https://code.jquery.com/jquery-3.1.0.slim.min.js" integrity="sha256-cRpWjoSOw5KcyIOaZNo4i6fZ9tKPhYYb6i5T9RSVJG8=" crossorigin="anonymous")
  script(src="https://cdnjs.cloudflare.com/ajax/libs/json2/20150503/json2.min.js")
  script(src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js")
  script(src="https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.3.3/backbone-min.js")
  script(src="https://cdnjs.cloudflare.com/ajax/libs/backbone.marionette/3.0.0/backbone.marionette.min.js")
  script.
    var CharacterTemplating = new Marionette.Application();
    CharacterTemplating.on("start", function(){
    console.log("Character Templating has started!");
    });
    CharacterTemplating.start();

导致此错误:

characters:5 Uncaught ReferenceError: Marionette is not defined

代码从节点/快速服务器进程提供服务。知道我哪里错了吗?

更新:我检查了网络流量,看起来似乎没有因为某些原因加载Marionette库。检查是否从其他地方加载它有助于......

更新:从另一个CDN加载依赖项会导致Backbone.Marionette库出现在网络流量中,但现在我收到此错误:

backbone.marionette.min.js:19 Uncaught TypeError: Cannot use 'in' operator to search for 'default' in undefined(anonymous function) @ backbone.marionette.min.js:19(anonymous function) @ backbone.marionette.min.js:14(anonymous function) @ backbone.marionette.min.js:14
characters:5 Uncaught TypeError: Marionette.Application is not a constructor

代码几乎没有从我用于参考的书中的示例代码(Backbone.Marionette:A Gentle Introduction)改变,所以它应该工作......看看是否可能有另一个基本参考用作指引。也许是一个更新的......

更新:使用主Backbone.Marionette API文档中的语法再次尝试:

var Mn = require('backbone.marionette');

接下来是:

var CharacterTemplating = new Mn.Application();

导致此错误:

Uncaught ReferenceError: require is not defined

所以看起来在Jade模板中没有节点; hhhhmmmm ......不管怎样我都不需要在节点中使用牵线木偶,因为我将它包含在脚本中。

0 个答案:

没有答案