【发布时间】:2016-06-02 13:10:42
【问题描述】:
早安,
我正在使用dustjs-linekedin 2.7.2.,通过 Webpack 和 Angular 在browser中验证模板。
我需要加载dustjs-linkedin/lib/ 中的所有文件,或者只是加载dust-full.jsin 目录dustjs-linkedin/dist
我声明看起来像这样window.dust = require('dustjs-linkedin'),它可以工作,但只需加载dust.js,如下图所示。
当我尝试使用dust.compile(..)时出现错误,dust.compile不是函数。
只是为了清楚我想要什么,将使用:
function checkDustTemplate (template) {
try {
debugger
var compiled = dust.compile(data);
var tmpl = dust.loadSource(compiled);
dust.render(tmpl, { name: "Name" }, function(err, out) {
document.getElementById('output').textContent = out;
}
catch(err) {
console.log(err);
}}
我已尝试仅加载 dust-full.js因为这有我需要的一切:
window.dust = require('dustjs-linkedin/dist/dust-full.js')
但我在下面收到此错误:
对于英语和有问题的问题,我深表歉意。
【问题讨论】:
-
尝试
require('dustjs-linkedin/index.js') -
我的朋友,我忘了提,也试过了,我得到了这个错误:
Module not found: Error: Cannot resolve module 'dust.core' in /node_modules/dustjs-linkedin/lib @ ./~/dustjs-linkedin/lib/parser.js 4:4-6:6 -
还有
ERROR in ./~/dustjs-linkedin/lib/compiler.js Module not found: Error: Cannot resolve module 'dust.core' in /node_modules/dustjs-linkedin/lib @ ./~/dustjs-linkedin/lib/compiler.js 3:4-5:6 -
您遇到了我们没有真正预见到的有趣的问题组合。我认为你最好的选择是使用
ProvidePlugin之类的东西来包含内置灰尘,或者尝试let dust = require('dustjs-linkedin/lib/dust'); let compiler = require('dustjs-linkedin/lib/compiler'); -
@interrobang 同样的问题gist.github.com/valimkings/641dc3048ae93ec5a00867d9d157b650
标签: javascript angularjs webpack dust.js