gpt4 book ai didi

symfony - Webpack 安可 : How to include js from/vendor and use globally?

转载 作者:行者123 更新时间:2023-12-02 10:52:54 25 4
gpt4 key购买 nike

如何包含/vendor 文件夹中的资源以便我可以在全局范围内使用它?

我的base.html.twig:

<script src="{{ asset('build/vendor.js') }}"></script>
<script src="{{ asset('build/color-admin.js') }}"></script>
<script src="{{ asset('build/app.js') }}"></script>

<script>
$(document).ready(function() {
App.init();
});
</script>

在我的 webpack.config 中我有:

.addEntry('color-admin', [
onePageJSFolder + '/apps.js',
onePageCSSFolder + '/animate.css',
onePageCSSFolder + '/style.css',
onePageCSSFolder + '/style-responsive.css',
onePageCSSFolder + '/theme/orange.css',
])

其中 onePageJSVolder 是/vendor 文件夹的有效 URL:

var frontend = './vendor/suvya/color-admin-3/frontend';
var onePage = frontend + '/one-page-parallax/template_content_html';
var onePageAssetsFolder = onePage + '/assets';
var onePagePluginsFolder = onePageAssetsFolder + '/plugins';
var onePageCSSFolder = onePageAssetsFolder + '/css';
var onePageLessFolder = onePageAssetsFolder + '/less';
var onePageJSFolder = onePageAssetsFolder + '/js';

但我收到错误应用程序未定义。 (来自base.html.twig)。应用程序在 apps.js 中声明,但不被全局认可。

如何解决这个问题?

我正在运行 Symfony-BETA4

最佳答案

也许对 base.html.twig 使用唯一的 createSharedEntry 会更好?看看我的 react 应用程序示例:

.createSharedEntry('vendor', [
'jquery',
'bootstrap',
'react',
'react-dom',
'./node_modules/bootstrap/scss/bootstrap.scss'
])

它将生成三个文件:vandor.css、vendor.js 和manifest.js。此流程在documentation中有很好的描述。 ,以及关于您的问题:在 Webpack 内部,当您需要模块时,它(通常)不会设置全局变量。相反,它只返回一个值: 您需要检查全局变量。看this example使用全局变量解决 jQuery 问题,也许它会对你有所帮助。据我所知,您需要将 autoProvideVariables 添加到您的 webpack.config.js

关于symfony - Webpack 安可 : How to include js from/vendor and use globally?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47374691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com