在 html 中包含翡翠

Include jade in html

我想在 html 元素中包含一个 jade 脚本(就像它是 html 的一部分一样显示),如下所示:

container.getElement().html('<include src="main.jade"</include>');

但显然include 标签不起作用。我应该使用什么? (我可以用jquery)

您可以将 Jade 编译成 HTML 而不是使用 DOM:

中的某种包含
var jade = require('jade');

// Compile a function
var fn = jade.compile('string of jade', options);

// Render the function
var html = fn(locals);
// => '<string>of jade</string>'

然后你可以将 HTML 编译成一些东西,比如 angular.element:

var compiledElement = $compile('<string>of jade</string>')(scope);
someDomElement.append(compiledElement);

您可以使用 $rootScope.$new() 创建模拟作用域,或者使用 element.scope() 从元素获取作用域(或 isolateScope),其中元素是某个 angular 元素。

查看 Jade 文档。