【发布时间】:2017-12-11 01:03:34
【问题描述】:
我有一个 SS3.x 模块,我已经分叉了,通过 composer 从它的分叉中拉下来,并开始移植到 SS4。到目前为止一切顺利,除了需求方面。
我在另一个模块中使用现有代码中的需求格式,该格式有一个冒号分隔的格式,如下所示:
Requirements::javascript('company/mymodule:javascript/SortableUploadField.js');
此文件存在于 /vendor/company/mymodule/javascript/SortableUploadField.js 的模块中。但是在页面加载时,我在控制台中有一个 404,因为 SS 在 /resources/company/mymodule/css/SortableUploadField.css 中查找此文件。而这并不存在。
当我看到其他模块这样做时,我在我的 composer.json 文件中添加了以下内容:
"extra": {
"installer-name": "sortableuploadfield",
"expose": [
"css",
"javascript"
]
},
并运行了作曲家更新。但是这个模块没有出现 /resources 目录(其他模块在那里)。而且我在网上找不到任何关于这应该如何工作的信息。
编辑:作为旁注,我想知道documentation for Requirements 是否具有误导性?它完全忽略了模块的这个警告,并完全提到了资源目录。如果该文档只是为了传达在正常的 mysite 开发中使用 JS/CSS 的过程,那么它只是有点令人困惑,因为代码无处不在。当然,这不会是 /vendor 中某些内容的直接 url。
【问题讨论】:
标签: silverstripe silverstripe-4