Sla*_*wek 10 amd commonjs node.js typescript durandal
我正在尝试使用Typescript将Durandal与node.js服务器集成,以便在服务器端和客户端上定义模块.
我遇到的问题是Durandal强烈依赖于RequireJS和AMD风格的定义模块,我不想在服务器端引入,因为它使用RequireJS我没有任何机会运行CommonJS-ish模块在客户端上(node.js的默认值).
棺材中的最后一个问题是,我发现没有办法定义哪些文件应该编译为AMD模块,哪个文件作为CommonJS由tsc编写 - 这似乎是最简单的解决方案.
我不认为分离客户端部分和服务器部分是一种选择,因为很多代码对于这两个部分都是通用的.
所以,我的问题有三个:
有没有办法在相同的Typescript项目中混合AMD和CommonJS模块(最好使用NodejsTools)
如果没有,有没有办法强迫Durandal使用CommonJS文件来加载视图/视图模型等等
如果这一切都不可能,那么在node.js服务器上使用AMD模块是可能的(也是明智的)
任何想法都受到高度赞赏
有没有办法在相同的Typescript项目中混合AMD和CommonJS模块(最好使用NodejsTools)
是.使用grunt-ts.请参阅https://github.com/basarat/demo-fullstack/tree/master/src,特别是gruntfile常用文件:https://github.com/basarat/demo-fullstack/blob/master/src/Gruntfile.js# L4-L6 commonjs:https://github.com/basarat/demo-fullstack/blob/master/src/Gruntfile.js#L26 amd:https://github.com/basarat/demo-fullstack/blob/master/ SRC/Gruntfile.js#L37