2

所以,我正在制作一个 CMS,并使用模块化扩展 HMVC CI 2.0。很可爱。我想知道将我的资产(js、css、img)与模块目录中的模块相关的正确方法。

问题是,我如何链接到这些资产?假设我正在使用模板引擎并传递 js 文件以加载特定页面:

$js[] = 'assets/js/my_js.js';

我想我问的都是错的,但是有没有一种简单的方法可以使用当前模块的目录进行链接?

提前致谢。

4

1 回答 1

0

CI 或 HMVC 目前没有为此内置任何内容。

喜欢从应用程序目录中引用允许直接访问的文件,例如 images/js/css。主要是因为:

  • 我不想让任何人知道我的应用程序的内部结构是什么样的。通过直接从模块中引用文件,您可以公开应用程序的目录结构。

  • 如果我使用 HMVC ,我永远不会这样做

  • 您现在必须允许通过 .htaccess 直接访问应用程序中的(某些)目录。出于安全原因,我更喜欢简单地禁止整个事情。

我理解尽可能模块化的愿望,但对我来说这不值得这么麻烦。我更喜欢在一个名为“modules”的公共文件夹中保留一个单独的目录(复制我的应用程序/模块结构),它只有“资产”(css、js、图像......)。

我会提供一些代码,但我不知道你是如何将 js/css 添加到你的视图中的——它可能与我这样做的方式有很大不同。编写一个函数来检测当前模块、控制器或方法并自动更改资产文件夹很容易,但这可能会干扰其他共享资产。我建议编写一个完全独立的函数来从模块加载资产。

于 2011-06-08T17:23:47.533 回答