首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TinyButStrong (和OpenTbs)库无法工作

TinyButStrong (和OpenTbs)库无法工作
EN

Drupal用户
提问于 2018-09-12 10:09:34
回答 1查看 319关注 0票数 -2

使用两个include_once()从web下载Drupal之外的脚本,它运行得非常好。但是这里阅读的问题和答案告诉我,在Drupal 8控制器中,这不再是一个选项。很好。

代码语言:javascript
复制
composer require tinybutstrong/tinybutstrong
composer require tinybutstrong/opentbs

这两个命令将代码放在我的供应商dir中,最终自动加载程序(替代include_once)完成了它的工作:克隆我控制器中的所有代码,我收到一个致命的错误:“不能声明类TinyButStrong\clsTbsLocator,因为这个名称已经在include_once中使用了。

我想现在我在控制器中遗漏了一个use语句。尝试过(很多次!)没有运气的选项,例如:

代码语言:javascript
复制
namespace TinyButStrong; # at the beginnig of vendor/.../tbs_class.php and
use TinyButStrong\clsTinyButStrong; # before my method in my controller...

另外,我读过“每个文件一个类”。但是tbs_class.php包含几个定义类和3个类。我会被迫在几个文件中剪切它(忘记用composer安装)吗?

提前谢谢。祝您今天愉快。

EN

回答 1

Drupal用户

回答已采纳

发布于 2018-09-12 13:45:51

包含带有composer的库不会改变它的工作方式及其类/命名空间结构。

它不会自动获得名称空间,包名和命名空间之间没有关联。

https://github.com/Skrol29/tinybutstrong的角度来看,它似乎不使用名称空间,而是将所有内容都包含在一个文件中。

因此,这正是您仍然必须使用的方式,只需引用带有new \clsTinyButStrong()的全局命名空间。

如果这样做不起作用,那么您需要报告有一个bug,它负责告诉编写器在哪里加载它的文件。

票数 1
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/269196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档