Pug 使用Jade作为Durandal视图引擎?

Pug 使用Jade作为Durandal视图引擎?,pug,durandal,Pug,Durandal,Durandal似乎支持自定义视图引擎: 但是我很难理解使用Jade模板作为我的Durandal视图引擎(客户端,而不是在服务器上渲染)需要更改或添加什么 是否应该在Durandal源代码中完全重写viewEngine.js实现?() 或者有没有更简单的方法,比如添加jade作为requirejs加载程序? (例如) 任何帮助都将不胜感激 编辑:我尝试将上述requirejs插件添加到Durandal,并通过main.js进行配置: requirejs.config({ paths: {

Durandal似乎支持自定义视图引擎:

但是我很难理解使用Jade模板作为我的Durandal视图引擎(客户端,而不是在服务器上渲染)需要更改或添加什么

是否应该在Durandal源代码中完全重写viewEngine.js实现?()

或者有没有更简单的方法,比如添加jade作为requirejs加载程序? (例如)

任何帮助都将不胜感激

编辑:我尝试将上述requirejs插件添加到Durandal,并通过main.js进行配置:

requirejs.config({
  paths: {
    ...
    'jade': 'durandal/amd/jade'
  }
});

...

var viewEngine = require('durandal/viewEngine');
viewEngine.viewExtension = ''; // Using .jade here results in requests for SomeView.jade.jade
viewEngine.viewPlugin = 'jade';

但是视图定位器似乎有问题,不确定如何配置此设置。注意,我使用的是视图(.html)和视图模型(.js)在同一目录中并排的约定,通过稍微修改
viewEngine
,可以加载和渲染
.jade
文件。Monkey将requirejs路径配置修补为默认的
viewEngine
,允许Durandal加载不同的视图引擎

我拼凑了一些东西,可以找到演示

希望这能帮助你朝着正确的方向前进