我使用的是 Symfony 4.2,我使用的是最后一个 WebPack Encore。
我有问题,因为我需要在我的树枝模板上使用我的 javascript 中的函数,但这永远行不通。
我总是有同样的问题:
未捕获的 ReferenceError:consoleText 未在 (index):17 处定义
资产/js/app.js:
require('../css/app.css');
const $ = require('jquery');
global.$ = global.jQuery = $;
资产/js/myFunctions.js
const consoleText = function (log = "Auncun log") {
console.log(log);
};
module.exports = {
    consoleText: consoleText
};
webpack.config.js
var Encore = require('@symfony/webpack-encore');
Encore
    .setOutputPath('public/build/')
    .setPublicPath('/build')
    .addEntry('app', './assets/js/app.js')
    .enableSingleRuntimeChunk()
    .cleanupOutputBeforeBuild()
    .enableBuildNotifications()
    .enableSourceMaps(!Encore.isProduction())
    .autoProvidejQuery()
;
module.exports = Encore.getWebpackConfig();
我需要在我的文件之外访问我的函数 consoleText()。
如果我想访问 javascript 文件,这个工作。示例:在我的 app.js 中,我可以添加:
let myTest = require('./myFunctions');
myTest.consoleText('Blablabla');
编译后可以正常工作。
但是我需要在我的树枝模板(home.html.twig)上访问这个功能
在我的 base.html.twig 中,我使用以下命令调用了我的脚本文件:
{% …