Кто-нибудь сталкивается с этой проблемой с помощью #with?
// Код в вызывающем шаблон, Helper здесь используется только для передачи параметров шаблона суб
{{#with inputControlCheckboxHelper "middleName" "Middle Name" "" "middleNameDNA" "Address" "Alexander"}}
{{> inputControlCheckbox}}
{{/with}}
// Просто проходя по параметрам с помощнику
Template.registerHelper("inputControlCheckboxHelper",
function (inputName, inputTitle, inputSubTitle, checkboxName, templateName, inputPlaceHolder) {
return {
fieldName: inputName,
title: inputTitle,
subTitle: inputSubTitle,
checkbox: checkboxName,
template: templateName,
placeHolder: inputPlaceHolder
};
});
// Шаблон суб , это называет другой помощник
<template name="inputControlCheckbox">
{{#with shouldBeDisabled template checkbox}}
{{> afFieldInput name=../fieldName}}
{{/with}}
{{> afFieldInput name=checkbox type="boolean-checkbox"}}
</template>
// Шаблон, чтобы проверить, должно ли входное значение быть di sabled.
Template.registerHelper("shouldBeDisabled", function (formName, checkBoxName) {
var checkBox = AutoForm.getFieldValue(formName, checkBoxName);
if (checkBox === true) {
return {disableMe: true, notApplicable: "N/A"};
}
else if (checkBox === false) {
return {disableMe: false, notApplicable: ""};
}
else if (checkBox === "") {
return {disableMe: false, notApplicable: ""};
}
});
В консоли Chrome, трассировки стека выглядит так:
Если удалить не в {{#with shouldBeDisabled шаблон CheckBox}} строки, я не исключение. Кроме того, даже за исключением, все отображает поиск, и флажок работает с входом.
Я использую железный маршрутизатор 1.0.1, Meteor 1.0 и AUTOFORM 4.0.1