【发布时间】:2021-09-30 17:23:34
【问题描述】:
我在 PHP 和 Javascript 方面经验丰富,并且迄今为止广泛使用它们。我从未使用过像 Vue、Angular 或 React 这样的现代 js 框架,并且对这个概念非常陌生。而且也没有打包工具的经验。
现在我想尝试一下,进入现代 Web 应用程序开发的新世界。我已经开始阅读 Vue 文档并喜欢它。
但我还没有准备好从头开始开发单页应用程序。相反,我想在现有项目中尝试它(使用 PHP 后端和 ES6 前端)
我已经搜索过此类集成,但找不到任何帮助文档。
我想使用:
- .vue SFC 文件
- 热更新 (HMR)
- 维特
更多信息:
我使用的 PHP 框架只有一个 index.php 条目和通过 htaccess 的虚拟路由。
简单的结构是这样的:
www/
├──.htaccess
├──index.php
├──Application/
├──public/
│ ├── js/
│ ├── css/
├──Modules/
│ ├──MyVueApp/
│ │ ├──Controllers/
│ │ ├──Views/
│ │ │ ├──index.phtml
│ │ ├──Model.php
│ │ ├── //and etc...
在位置http://localhost/en/MyVueApp 后端框架在布局中呈现动态索引页面。
index.phtml 的内容
<?php
$this->layout->addCss('css/my-vue-app/main.css')
$this->layout->addJs('js/my-vue-app/main.js')
?>
<div id="app"><!-- vue app mounts here --></div>
如何在此结构上安装和运行 Vite+Vue,如何将其发布到生产环境中?
【问题讨论】:
-
问问自己为什么还需要 php?一旦你捆绑了 SPA,它就可以从 apache 或任何其他静态文件服务器运行,毕竟它是一个 SPA,你不需要 $this->layout->addCss 和 $this->layout->addJs 等 PHP 的工作将只是一个休息 API,但是你问自己为什么在 nodejs 是 js 时将 PHP 放在混合中,并且不需要额外的工具,如服务器、安装的 PHP、diff linters 和包管理器等。
-
这个问题被简化了,以便于理解。实际情况比较复杂。我正在尝试将 Vue 集成到现有项目中。我不能使用 index.html 文件,因为我必须使用 PHP 框架布局引擎。