TYPO3 Neos: применить свойство содержимого, запущенное с ошибкой JavaScript
Я пытаюсь создать пользовательский тип узла, как несколько столбцов и по умолчанию ContentCollection
должен быть расширен дополнительным свойством. Бэкэнд и внешний интерфейс работают до сих пор. Но если собственность span
из ContentCollection
изменен, редактор работает с ошибкой тайм-аута JavaScript. В консоли нет ошибок или предупреждений.
Сообщение об ошибке:
Предупреждение: не отвечает на скрипт
Ein Skript auf dieser Seit ist eventuell beschäftigt oder es antwortet nicht mehr. Сценарий написания сценария, отладчик, отладка или отладка.
Скрипт: 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 = '.'
}
}
Ресурсы /Private/Templates/NodeTypes/Column.html
{namespace ts=TYPO3\TypoScript\ViewHelpers}
<div{attributes -> f:format.raw()}>
<ts:render path="columnContentCollection" />
</div>
Ресурсы / Частным лицам /Templates/NodeTypes/Row.html
{namespace ts=TYPO3\TypoScript\ViewHelpers}
<div{attributes -> f:format.raw()}>
<ts:render path="columns" />
</div>
1 ответ
Кажется, это проблема, описанная в этом выпуске Jira. К сожалению, это еще не было решено, но предварительное решение существует как открытое изменение (для обзора): https://review.typo3.org/
Вы можете попробовать применить это изменение к пакету TYPO3.Neos и дать отзыв, если он решит вашу проблему, чтобы его можно было включить в следующий выпуск Neos.