TYPO3 Neos: применить свойство содержимого, запущенное при ошибке JavaScript

Я пытаюсь создать собственный тип узла, такой как несколько столбцов, и значение по умолчанию ContentCollection должно быть расширено дополнительным свойством. Бэкэнд и фронтенд пока работают. Но если свойство span ContentCollection изменяется, редактор запускается с ошибкой тайм-аута JavaScript. В консоли нет ошибок или предупреждений.

Сообщение об ошибке:

Предупреждение: скрипт не отвечает

Ein Skript auf dieser Seite ist eventuell beschäftigt oder es antwortet nicht mehr. Sie können das Skript jetzt stoppen, im Debugger öffnen oder weiter ausführen.

Скрипт: http://domain.com/_Resources/Static/Packages/TYPO3.Neos/JavaScript/ContentModule-built.js:389

Для воспроизведения выполните следующие действия:

Использование пакета сайта "TYPO3.NeosDemoTypo3Org". TYPO3 Neos v1.1.2. Создайте пакет «Селектор.Тест»

Конфигурация / Settings.yaml

TYPO3:
  Neos:

    typoScript:
      autoInclude:
        'Selector.Test': TRUE

    nodeTypes:
      groups:
        selectorTest:
          label: 'Selector Test'
          position: 10

Конфигурация / NodeTypes.Columns.yaml

'Selector.Test:RowAbstract':
  abstract: TRUE
  superTypes:
    - 'TYPO3.Neos:Content'
  ui:
    label: 'Columns'
    group: 'selectorTest'
    icon: 'icon-columns'
    inlineEditable: TRUE
    inspector:
      groups:
        columnSettings:
          label: 'Column settings'
          position: 10

# Create a custom ContentCollection
'Selector.Test:ColumnContentCollection':
  superTypes:
    - 'TYPO3.Neos:ContentCollection'
  ui:
    label: 'Column Content Collection'
    icon: 'icon-list'
    inlineEditable: TRUE
    inspector:
      groups:
        columnSpan:
          label: 'Column span'
          position: 10
  properties:
    span:
      type: string
      defaultValue: ''
      ui:
        label: 'Span'
        reloadIfChanged: TRUE
        inspector:
          group: 'columnSpan'

# Define row with custom ContentCollection
'Selector.Test:Row':
  superTypes:
    - 'Selector.Test:RowAbstract'
  childNodes:
    column0:
      type: 'Selector.Test:ColumnContentCollection'
    column1:
      type: 'Selector.Test:ColumnContentCollection'

Ресурсы / Private / TypoScript / Root.ts2

prototype(Selector.Test:Row) < prototype(TYPO3.Neos:Content) {

    templatePath = 'resource://Selector.Test/Private/Templates/NodeTypes/Row.html'

    attributes {
        class = 'row'
    }

    columns = TYPO3.TypoScript:Collection {
        collection = ${q(node).children('[instanceof TYPO3.Neos:ContentCollection]')}
        itemRenderer = Selector.Test:Column
        itemName = 'node'
    }
}

prototype(Selector.Test:Column) < prototype(TYPO3.TypoScript:Template) {

    node = ${node}
    templatePath = 'resource://Selector.Test/Private/Templates/NodeTypes/Column.html'

    attributes = TYPO3.TypoScript:Attributes {
        class.span = ${q(node).property('span') ? q(node).property('span') : null}
    }

    columnContentCollection = TYPO3.Neos:ContentCollection {
        nodePath = '.'
    }
}

Ресурсы / Частный / Шаблоны / NodeTypes / Column.html

{namespace ts=TYPO3\TypoScript\ViewHelpers}
<div{attributes -> f:format.raw()}>
    <ts:render path="columnContentCollection" />
</div>

Ресурсы / Частный / Шаблоны / NodeTypes / Row.html

{namespace ts=TYPO3\TypoScript\ViewHelpers}
<div{attributes -> f:format.raw()}>
    <ts:render path="columns" />
</div>

person user2513437    schedule 11.11.2014    source источник


Ответы (1)


Похоже, это проблема, описанная в этой проблеме Jira. К сожалению, это еще не было решено, но существует предварительное решение в виде открытого изменения (для проверки): https://review.typo3.org/#/c/31244/

Вы можете попробовать применить это изменение к пакету TYPO3.Neos и дать отзыв, если он решит вашу проблему, чтобы его можно было включить в следующий выпуск Neos.

person Christopher    schedule 08.12.2014
comment
Я пробовал этот патч около недели назад в v1.1.2 и v1.2-beta, но он не решает проблему. А пока я использую другой метод, и он мне больше не нужен. Но на будущее, думаю, может пригодиться. - person user2513437; 08.12.2014