dojo: невозможно прочитать свойство «appendChild» со значением null

Вот моя фабричная функция определения:

declare([_WidgetBase, _TemplatedMixin, _WidgetsInTemplateMixin], {
        widgetsInTemplate: true,
        templateString: FiltersTemplate,
        baseClass: 'gis_FiltersDijit',
        i18n: i18n,
        postCreate: function () {
            var pins = ['12-82-080', '04-52-080', '04-77-080'];
            for (p = 0; p < pins.length; p++) {
                var curBox = new CheckBox({
                    value: pins[p]
                });
                domConstruct.place(curBox, 'projPinFilter', 'last');
            }             
        }

Флажок 'dijit/form/CheckBox'

почему я получаю эту ошибку? Я использую dojo/domReady!.

Вот соответствующий html:

<button data-dojo-type="dijit/form/DropDownButton">
                        <span>Proj. PIN</span>
                        <div id="projPinFilter"></div>
                    </button>

Как видите, я пытаюсь имитировать заполнение выпадающего списка флажков значениями сервера.

Все советы приветствуются, спасибо.


person pQuestions123    schedule 08.06.2015    source источник


Ответы (1)


Я думаю, это потому, что 1 аргумент domConstruct.place должен быть domNode. Итак, curBox.domNode

Я бы предпочел использовать placeAt: curBox.placeAt('projPinFilter')

Примечание. 'last' используется по умолчанию.

Если это не поможет, попробуйте добавить console.log(dom.byId('projPinFilter')) Он должен вывести domNode, к которому вы хотите добавить. Если нет, то дом еще не готов (но вряд ли, потому что вы используете dojo/domReady!

person ben    schedule 15.06.2015