This is a typescript definitions file for require.js.
Compile *.ts files as AMD modules:
tsc --module AMD main.ts
export classes so they can be accessed from an import:
// File main.ts
export class Main {
run() {
...
}
}
Reference require.js statically in your html page (normally how you would do this with vanilla javascript)
<script data-main="config.ts" type="text/javascript" src="lib/require.js"></script>
where main.ts is the source file containing imports/configuration/require initialization. where type is javascript since require.js is javascript. where src is the reference to require.js.
Sample contents of config.ts: The sample config will load all required shims and AMD modules and then kick off main.ts once everything is loaded.
//file config.ts
require.config({
baseUrl: 'lib',
paths: {
'jquery': 'lib/jquery-x.x.x',
'underscore': 'lib/underscore-x.x.x',
'backbone': 'lib/backbone-x.x.x'
},
shim: {
jquery: {
exports: '$'
},
underscore: {
exports: '_'
},
backbone: {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
}
}
});
// load AMD module main.ts (compiled to main.js)
// and include shims $, _, Backbone
require(['main'], (main, $, _, Backbone) => {
var app = main.AppMain();
app.run();
});