我在 Yii2 框架中构建了一个应用程序,我在后端开发了应用程序,但我知道我想将它们复制成一个模块。
这是我的应用程序目录
backend
--modules
--pstk
--controllers
--ValidationController.php
--DefaultController.php
--InterviewController.php
--StudentController.php
--SiteController.php
--UsersController.php
--models
--Validation.php
--Interview.php
--Student.php
--Users.php
--views
--validation
--_form.php
--view.php
--index.php
--update.php
--create.php
--interview
--student
--users
--Module.php
--web
--css
--manual_general.css
--js
--upload_header.js
--style
例如,我已经成功运行了 view.php
从浏览器中的模块,但模块无法访问 .css
和 .js
来自 backend/web/
.所以显示了 View ,但它是 View 混搭,所有按钮在单击时都没有执行任何操作。
任何人都知道为什么模块没有访问 manual_general.css
和 upload_header.js
来自 backend/web/
?我该如何解决这个问题?
任何帮助,将不胜感激。谢谢:)
编辑:
这是 mi view.php 中用于连接到 .js
的代码和 .css
<link rel="stylesheet" type="text/css" href="../../../../web/css/manual_general.css">
<script type="text/javascript" src="../../../../web/js/upload_header.js"></script>
尝试使用 yii\helpers\Url::to,例如:
<link rel="stylesheet" type="text/css" href="<?= Url::to('@web/css/manual_general.css') ?>">
<script type="text/javascript" src="<?= Url::to('@web/js/upload_header.js') ?>"></script>
或者,在 view.php 中你可以这样做(假设 $this 是你的 View 实例):
<?php $this->registerCssFile('@web/css/manual_general.css'); ?>
<?php $this->registerJsFile('@web/js/upload_header.js'); ?>
我是一名优秀的程序员,十分优秀!