【发布时间】:2018-02-16 21:01:52
【问题描述】:
刚开始使用 Symfony 和 Encore/Webpack。
我按照 Symfony 的教程进行操作,我的 webpack.config.js 如下:
var Encore = require('@symfony/webpack-encore');
Encore
.setOutputPath('public/build/')
.setPublicPath('/build')
.addEntry('app', './assets/js/app.js')
.addStyleEntry('global', './assets/scss/global.scss')
.enableSassLoader()
.enableLessLoader()
.enablePostCssLoader()
.enableReactPreset()
.autoProvidejQuery()
.enableBuildNotifications()
.cleanupOutputBeforeBuild()
.enableSourceMaps(!Encore.isProduction())
.enableVersioning(Encore.isProduction())
.createSharedEntry('vendor', [
'materialize-css',
'./assets/js/global.js',
])
;
module.exports = Encore.getWebpackConfig();
我的基本观点是:
{% extends 'base.html.twig' %}
{% block body%}
Start
{% endblock %}
{% block stylesheets %}
<link rel="stylesheet" href="{{ asset('build/global.css') }}">
{% endblock %}
{% block javascripts %}
<script src="{{ asset('build/app.js') }}"></script>
{% endblock %}
我的问题是,即使这两个文件都与文档中的教程几乎相同,但在本地主机上进行测试时,加载 css 和 js 假定输出文件时出现错误。
我的manifest.json 有这个,这些文件存在并且在正确的位置编译:
"build/app.js": "/build/app.b9fa9f82050709ad01b8.js",
"build/global.css": "/build/global.ae6834d55ea0d4ff4100ad77aeffad72.css"
chrome 控制台的输出:
GET http://localhost/my-website/public/build/app.js net::ERR_ABORTED localhost/:11
GET http://localhost/my-website/public/build/global.css net::ERR_ABORTED localhost/:6
【问题讨论】:
标签: symfony webpack twig webpack-encore