Webpack - 使用 Symfony 实现

Webpack - Materialize with Symfony

我正在 运行在 Symfony 上创建一个项目。我想第一次使用 Symfony 4、Webpack 和 Vagrant/Homestead.

我的主机是Windows10 我的项目托管在 Debian 上使用 vagrant/Homestead 制作的虚拟机上 Wabpack(纱线)已安装

所以,

我创建了一个 "assets" 文件夹 在里面我有一个 "css" 文件夹,一个 "js" 文件夹和一个 "scss" 文件夹。

我运行命令

yarn add materialize-css

然后我运行

yarn encore dev --watch

(ofc 我之前已经 运行 纱线安装)

但是当我 运行 我的 Symfony 网站时...未检测到 Materialize.. 我的控制台显示以下错误:

GET http://website.test/build/app.css/ net::ERR_ABORTED 404 (Not Found) (index):16

GET http://website.test/build/manifest.js net::ERR_ABORTED 404 (Not Found) favicon.ico:1

GET http://website.test/favicon.ico 404 (Not Found)

这是我的基本模板:

<!DOCTYPE html>

    <meta charset="UTF-8">
    <title>{% block title %}Welcome!{% endblock %}</title>
    {% block stylesheets %}
    <link rel="stylesheet" href={{ asset("build/app.css") }}/>
    {% endblock %}
</head>
<body>
<h1 class="grey">It works !</h1>
<a class="waves-effect waves-light btn">button</a>
<a class="waves-effect waves-light btn"><i class="material-icons left">cloud</i>button</a>
<a class="waves-effect waves-light btn"><i class="material-icons right">cloud</i>button</a>

{% block body %}{% endblock %}
    {% block javascripts %}
        <script src={{ asset("build/app.js") }}></script>
        <script src={{ asset("build/manifest.js") }}></script>
    {% endblock %}
</body>

我不知道该怎么做才能使我的网站正常运行?

已修复!

你必须做的:

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

而不是:

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

如果还是不行你可以试试这个:

<script src={{ asset("./build/app.js") }}></script>
<script src={{ asset("./build/runtime.js") }}></script>

<script src={{ asset("./build/vendors~app.js") }}></script>
//  for style
<link rel="stylesheet" href={{ asset("./build/app.css") }}/>

对我有用。