【问题标题】:Symlink or copy files out of bower component符号链接或从 Bower 组件中复制文件
【发布时间】:2013-10-08 15:26:32
【问题描述】:

我需要一种方法来从 bower 组件中定义我需要的文件。在组件中的bower.json 中,我需要的文件未在main 设置中指定。我想要一种将文件符号链接或从 bower 复制到另一个目录资产目录的方法。我使用 Grunt,但没有找到任何可以提供帮助的东西。我很想通过json 定义所有文件。

抱歉,如果这不完全值得 stackoverflow,但我真的很想找到存在的东西而不是重新发明轮子。

我找到了这个代码here,但我不知道如何使用它。这将是理想的。

"dependencies": {
  "font-awesome": ">= 3.2.1"
},
"overrides": {
  "font-awesome": {
    "main": [
      "css/font-awesome.min.css",
      "font/FontAwesome.otf",
      "font/fontawesome-webfont.eot",
      "font/fontawesome-webfont.svg",
      "font/fontawesome-webfont.ttf",
      "font/fontawesome-webfont.woff"
    ]
  }
}

【问题讨论】:

    标签: json gruntjs bower


    【解决方案1】:

    我个人的做法和建议是在您的项目根目录中创建一个 .bowerrc 文件,并使用 postinstallinstructions 移动资产:

    {
      "scripts": {
        "postinstall": "mv ./bower_components/path/to/my.js ./path/to/ideal/location/my.js"
      }
    }
    

    【讨论】:

      【解决方案2】:

      看看grunt-bower-task。在高级用法下,文档建议这样做:

      此时“Bower 包”=“它的 git 存储库”。它的意思是 该软件包包括测试、许可证等。 Bower 社区积极参与 讨论了这个问题(GitHub 问题 #46、#88,在 Google Groups 上) 为什么你能找到像 blittle/bower-installer 这样的工具 启发了这个项目。

      好的,如果你想要 ./lib 目录中的多个“主”文件,那么把 将“exportsOverride”部分放入您的 bower.json:

      {
        "name": "simple-bower",
        "version": "0.0.0",
        "dependencies": {
          "jquery": "~1.8.3",
          "bootstrap-sass": "*",
          "requirejs": "*"
        },
        "exportsOverride": {
          "bootstrap-sass": {
            "js": "js/*.js",
            "scss": "lib/*.scss",
            "img": "img/*.png"
          },
          "requirejs": {
            "js": "require.js"
          }
        }
      }
      

      grunt-bower-task 将完成剩下的工作。

      【讨论】:

        【解决方案3】:

        我一直在成功使用bower-installer,这可能对那些不使用 Grunt 的人感兴趣。

        Font Awesome 需要额外的努力,因为 CSS 文件使用相对路径(例如 ../fonts/)。

        {
          "dependencies": {
            ...
          },
          "install": {
            "path": "webroot/components",
            "sources": {
              "font-awesome": {
                "mapping": [
                  {"bower_components/font-awesome/css/font-awesome.css": "font-awesome.css"},
                  {"bower_components/font-awesome/fonts/fontawesome-webfont.eot": "../fonts/fontawesome-webfont.eot"},
                  {"bower_components/font-awesome/fonts/fontawesome-webfont.svg": "../fonts/fontawesome-webfont.svg"},
                  {"bower_components/font-awesome/fonts/fontawesome-webfont.ttf": "../fonts/fontawesome-webfont.ttf"},
                  {"bower_components/font-awesome/fonts/fontawesome-webfont.woff": "../fonts/fontawesome-webfont.woff"},
                  {"bower_components/font-awesome/fonts/FontAwesome.otf": "../fonts/FontAwesome.otf"}
                ]
              }
            }
          }
        }
        

        【讨论】:

          猜你喜欢
          • 2023-01-07
          • 1970-01-01
          • 2013-09-12
          • 1970-01-01
          • 2012-12-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-06-16
          相关资源
          最近更新 更多