如何使用类型脚本创建marionete模块。我看到了这个how to write marionettejs module using typescript?,但它对我的情况没用。我创建了像
这样的模块<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="ui-widget">
<label for="tags">Tags: </label>
<input id="tags">
<div id="found"></div>
</div>
但它显示错误 第3561行http://localhost/Scripts/backbone.marionette.js
中第5列的未处理异常0x800a138f - JavaScript运行时错误:无法获取属性&#39;初始化&#39;未定义或空引用
我做错了什么。我是Marionette和打字稿的新手。使用打字稿创建木偶模块的正确步骤是什么 我的应用程序代码是
class TestModule extends Marionette.Module {
constructor(options) {
if (!options)
options = {};
var marionetteApp = new MarionetteApp();
marionetteApp.module("myModule", {
startWithParent: false
});
super("myModule", marionetteApp);
}
}
答案 0 :(得分:2)
我使用以下代码解决了问题。在类中包装的模块。它按预期工作。如果我错了,请纠正我,并且任何人都知道正确的程序
class TestModule {
mod: any;
constructor() {
var marionetteApp = new MarionetteApp();
this.mod = marionetteApp.module("myModule", {
startWithParent: false,
initialize: function(){
console.log("initialized");
},
define: function () {
console.log("defined");
}
});
this.mod.on("start", this.onStart);
}
start() {
this.mod.start();
}
onStart() {
console.log("Module started")
}
}
初始化代码
var MyModule = new TestModule();
MyModule.start();