Symfony 错误:“在呈现模板期间引发异常”

2022-08-30 18:53:36

我正在尝试包含

<link href="{{ asset('css/mystyle.css') }}"
      rel="stylesheet"/> 

在我的树枝文件中并渲染它。但它给了我Uncaught PHP Exception Twig_Error_Runtime:

“在呈现模板(”资产清单文件“/..)期间引发异常。/public/build/manifest.json“ 不存在。

当我使用时,它确实有效

link href="css/mystyle.css"
          rel="stylesheet"/>

.以下是我的控制器:

    <?php

namespace App\Controller;

use Symfony\Component\Routing\Annotation\Route;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;

class WelcomeController extends AbstractController
{
    /**
     * @Route("/", name="welcome")
     */
    public function index()
    {
        return $this->render('welcome/index.html.twig');
    }
}

以下是我的树枝模板:

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <meta name="description" content="">
    <meta name="author" content="">

    <title>Let's Explore Symfony 4</title>

    <!-- Bootstrap core CSS -->
    <link rel="stylesheet"
          href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.3/css/bootstrap.min.css"
          integrity="sha384-Zug+QiDoJOrZ5t4lssLdxGhVrurbmBWopoEl+M6BdEfwnCJZtKxi1KgxUyJq13dy"
          crossorigin="anonymous">

    <link href="{{ asset('css/mystyle.css') }}"
          rel="stylesheet"/>

</head>

<body>
<header>
    <nav class="navbar navbar-expand-sm navbar-dark bg-dark">
        <div class="container">

            <a class="navbar-brand" href="#">Home</a>

            <div class="collapse navbar-collapse">
                <ul class="navbar-nav mr-auto">
                    <li class="nav-item">
                        <a class="nav-link" href="#">Hello Page</a>
                    </li>
                </ul>
            </div>
        </div>

    </nav>
</header>

<main role="main" class="container main">
    <div>
        <h1>Let's Explore Symfony 4</h1>
        <p class="lead">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras rutrum sapien mauris, venenatis
            facilisis neque tincidunt vel. Maecenas vel felis vel turpis scelerisque eleifend. Fusce nec purus egestas,
            efficitur nisi ac, ultrices nulla. Pellentesque eu mollis tortor, in mollis nisl. Maecenas rhoncus quam non
            lacinia mollis.</p>
    </div>
</main>
</body>
</html>

如何解决此问题?


答案 1

执行以下命令:

yarn add --dev @symfony/webpack-encore

yarn add webpack-notifier --dev

yarn encore dev

它将生成 manifest.json 文件


答案 2

我已经通过不使用json_manifest_path解决了这个问题:〜

通过在json_manifest_path前面添加“#”并在“资产:”之后添加“~”来注释掉它:

framework:
    assets: ~
        #json_manifest_path: '%kernel.project_dir%/public/build/manifest.json'

推荐