2

我已经能够让 webpack 在bower_components. .bower.json当凉亭组件仅包含文件而不包含文件时,我遇到了问题bower.json(请注意,第一个文件名前面有 a .)。

我的文件的简化版本webpack.config.js如下所示:

var ResolverPlugin = require('webpack/lib/ResolverPlugin');

// webpack configuration
module.exports = {
    entry: {
        app: 'app.js'
    },
    output: {
        filename: '[name].js'
    },
    resolve: {
        modulesDirectories: ['node_modules', 'web_modules', 'bower_components', 'static']
    },
    plugins: [
        new ResolverPlugin(
            new ResolverPlugin.DirectoryDescriptionFilePlugin('bower.json', ['main'])
        )
    ]
};

我正在尝试使用jquery.selectBoxIt作为凉亭组件。另一个问题可能是它的文件中缺少一个main字段.bower.json。对于它的价值,我在下面包含了该文件:

// .bower.json

{
  "name": "jquery.selectBoxIt",
  "homepage": "https://github.com/gfranko/jquery.selectBoxIt.js",
  "version": "3.8.1",
  "_release": "3.8.1",
  "_resolution": {
    "type": "version",
    "tag": "v3.8.1",
    "commit": "ffa615b25ebf4fac392726b17c857d429acf244c"
  },
  "_source": "git://github.com/gfranko/jquery.selectBoxIt.js.git",
  "_target": "~3.8.1",
  "_originalSource": "jquery.selectBoxIt",
  "_direct": true
}
4

1 回答 1

3

.bower.json是 Bower 在依赖关系解析期间生成的文件。它不等同于bower.json并且通常不应使用,因为它是可能更改的内部文件。
如果您只看到一个.bower.json文件,则意味着该包没有文件bower.json(Bower 实际上可以在没有它的情况下工作)。在这种情况下,这意味着您将无法找到“主要”属性。
例如jquery.selectBoxIt.js包仅在其主分支中具有 bower.json 文件,但在其发布标签中没有(它可能尚未发布)。当您解决它时,Bower 将使用 3.8.1 git 标记,如您在 .bower.json 文件中所见。在这个标签中没有 bower.json 文件。
对于此类包,您可能需要考虑其他选项,例如 CommonsJS。

于 2015-01-22T15:55:11.990 回答