我开始回顾使用suitecript 1.0从套件中处理一些HTML模板的一些要求
我无法从netsuite中找到有关把手JS的任何信息,但我很好奇是否有任何要求配置服务器端生成的套件,因为我希望使用它来比较使用客户端实现
如果有人可以分享有关如何让套件准备好使用把手的任何有用的东西,将非常感激
答案 0 :(得分:2)
以下是我使用过把手的其中一个Suitelet的示例。您可以通过创建表单对象和html字段来设置套件,以保存呈现的把手模板。
var screenTitle = 'Form Title';
var form = nlapiCreateForm(screenTitle);
var pageTemplate = nlapiLoadFile('SuiteBundles/Bundle '+sitBundleId+'/src/sit_html_templates/template.html').getValue();
var hbTemplate = Handlebars.compile(pageTemplate);
Handlebars.registerHelper('if_eq',function(a,b,opts) { if(a == b) { return opts.fn(this); } else { return opts.inverse(this); } });
Handlebars.registerHelper('json', function(context) { return JSON.stringify(context); });
var data = {
"account_id":nlapiGetContext().getCompany(),
"bundle_id":sitBundleId,
"other_data":{}
};
var htmlValue = hbTemplate(data);
var templateField = form.addField('template_section','inlinehtml','',null,'main_group');
templateField.setDefaultValue(htmlValue);
response.writePage(form);
这是基础知识。当然,Handlebar库必须添加到NetSuite Suitelet记录的库子列表中。