【问题标题】:How to build angular for production with laravel?如何使用 laravel 构建 Angular 进行生产?
【发布时间】:2021-08-14 16:48:10
【问题描述】:

所以我有一个使用角度前端和 laravel 后端的项目。在线服务器文件仅包含 laravel 文件,我被告知我应该构建前端文件,然后将其传输到 laravel 文件夹。我该怎么做?

这是我的文件夹结构。

源代码文件夹包含 angular 文件,而网站文件夹包含 laravel 文件,例如:

这是在源代码文件夹中。

这是在网站文件夹中

给我的指示是

要在进行更改后为生产(您的实时站点)构建代码,请使用 npm run build 和 gulp dist 命令。这将编译、优化所有前端代码并将其输出到 public/client 文件夹中。要更新您的生产站点,请复制(并覆盖)public/client 文件夹和 resources/views/app.blade.php 文件。

我也这样做了。我在源代码文件夹中运行 npm run build 和 gulp dist 并且终端显示没有错误。一切顺利。在网站文件夹中,public/client 文件夹和 app.blade 也根据上次修改的时间进行了更新,因为它是在我完成运行 npm run build 和 gulp dist 之后自动修改的。但是,当我启动 laravel localhost 时,页面不会加载。当我运行 php artisan serve 并打开我在 .env 文件中设置的 APP_URL 时,我收到错误 Hmm cant connect to page 并在控制台中显示此 crbug/1173575,非 JS 模块文件已弃用。任何帮助将不胜感激。

【问题讨论】:

    标签: php angular laravel


    【解决方案1】:

    您的问题可能与 Laravel 的视图架构有关,然后是 Angular。对于 Angular,所发生的一切就是在 dist/* 中生成了一些文件,您可以直接将它们扔到网络服务器上,这就是整个应用程序。

    下一部分是将它放在你的网络服务器可以找到它的地方,这可能与 Laravel 配置有关。

    我的建议是确保文件是在 dist/* 中生成的(或者如果路径被覆盖,请在覆盖区域进行验证),最重要的是,验证您的 app.blade.php 文件是否被调用.如果没有,您可以专注于此。

    也许只需将“Hello world”样式的行放入 php 文件并确保它首先呈现。

    <?php
      phpinfo();
    ?>
    

    请记住,Angular 完全在浏览器中运行,您只需要使 JS、CSS 和其他文件可访问,前提是它们实际上正在生成并移动到正确的位置。

    【讨论】:

      猜你喜欢
      • 2020-05-19
      • 2021-03-14
      • 2020-03-01
      • 2015-06-09
      • 1970-01-01
      • 2018-03-01
      • 2017-11-29
      • 2017-12-03
      • 1970-01-01
      相关资源
      最近更新 更多