TYPO3后端模块DataTable没有function

我包括在我的extbase后端模块布局html中的不同资产。 要初始化多个DataTables:

$(dataTables[i]).DataTable(dataTableOptions); 
        

但在更新到TYPO3 7.6.15后,总会有

“TypeError:$(…)。DataTable不是函数”

错误。 我尝试了不同的变化,但没有任何作用。 我认为,问题将是后端模块中jquery的noconflict版本。 但我不知道,要解决这个问题。 我希望你能帮帮我

最好的评论丹尼尔

好吧,经过四处乱逛,我用Typo3 requirejs符号解决了我的问题。 我认为,jQuery Typo3 noConflict标题包括将是问题,我不知道,为什么Typo3不使用她自己的命名空间,因为他们的方法。 但我认为,将所有我自己/遗留的js-librariers包含在requirejs中将是最佳实践。

首先,在你的js文件中定义(我的:BackendModule.js放在’EXT:my_extension / Resources / Public / JavaScript’中)所有先决条件/依赖项,必须包括:

  define([ 'jquery', 'TYPO3/CMS/MyExtension/jquery-ui-widgets', 'moment', 'TYPO3/CMS/MyExtension/jquery.multiselect.min', 'datatables', ], function($, widgets, moment,multiselect) {[YOUR CODE]}); 

命名空间’TYPO3 / CMS / MyExtension / jquery-ui-widgets’映射到路径:’EXT:my_extension / Resources / Public / JavaScript / jquery-ui-widgets.js’

之后,我必须在模板中包含我的Js-File: