【发布时间】:2017-12-03 08:13:14
【问题描述】:
我正在尝试将我在静态 HTML 网站中使用的所有 javascript 文件捆绑在一起。到目前为止,它们都是未连接的,通过script 标签包含在不同的 HTML 文件中。
我现在创建了一个 main.js 文件,它只需要所有其他文件,这样我就可以将它用作我的 webpack 入口点。
这似乎适用于我自己编写的文件,但 bootstrap、tether 和 jquery 文件会抛出错误。
注意:我没有通过 npm 安装 jquery 或 bootstrap,我只是下载了 javascript 文件,将它们放在同一个文件夹中,并通过 require 将它们包含在 main.js 文件中。我的处理方式有什么问题吗?
// webpack.config.js
var path = require('path')
module.exports = {
entry: ['./js/main'], // file extension after index is optional for .js files
output: {
path: path.join(__dirname, 'js'),
filename: 'bundle.js'
}
}
main.js:
require('./jquery-3.1.1.slim.min.js');
require('./tether.min.js');
require('./bootstrap.min.js');
require('./navigation.js');
require('./geschichte.js');
require('./iziToast.min.js');
require('./kontakt.js');
编辑:
我的错误是:
Uncaught Error: Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.
at Object.<anonymous> (bundle.js:119)
at __webpack_require__ (bundle.js:20)
at Object.<anonymous> (bundle.js:79)
at __webpack_require__ (bundle.js:20)
at Object.<anonymous> (bundle.js:70)
at __webpack_require__ (bundle.js:20)
at bundle.js:63
at bundle.js:66
- 虽然包含,但应该包含。
【问题讨论】:
-
Webpack 是 ????。您应该有一个“主”javascript 文件,所以使用它作为入口点。
-
将
SASS/CSS与webpack捆绑并使用它应该是直截了当的,因为您可以将它捆绑到一个单独的文件中并将其包含在您的html页面中。使用JavaScript,如果<script>标签中的所有内容都散布在html页面上,那将变得很棘手。如果您可以将JavaScript写成只需要包含在您的主页上,那么您可以使用webpack。最简单的方法是使用像React、Vue、Aurelia、Angular这样的框架 -
嗯。感谢您的回答。我不太明白为什么使用 javascript 会更困难?我刚才试过了,还是不行。刚刚编辑了我的问题。
-
您的 bootstrap、tether 和 jquery 文件已缩小。您遇到了什么错误?
-
错误就像我从未包含这些文件一样。缩小是个问题吗?
标签: javascript jquery html css webpack