如何使用bower包含单独的codemirror模式文件?

时间:2014-10-21 17:33:41

标签: angularjs gruntjs gulp bower codemirror

我正在使用Yeoman Angular Fullstack构建一个角度的fullstack应用程序,其中包括bower。

在该应用程序中,我使用名为Codemirror的组件,该组件具有自己的名为codemirror的bower包,以及另一个名为angular-ui-codemirror的bower包。

在常规codemirror bower软件包中,名为mode的目录中还有其他模式文件,在普通的非bower托管应用程序中,我只需添加必要的脚本标记到我的index.html,但在这里,如果可能的话,我想以正确的方式使用凉亭。

如何使用bower将该单独的子文件包含在codemirror模式中?

1 个答案:

答案 0 :(得分:12)

由于 angular-fullstack 使用 wiredep 来注入您的bower依赖项,因此您可以覆盖 codemirror <的main属性/ em> bower包以在mode目录中包含您想要的其他文件。

为此,您有两种选择:

  • 覆盖您的Gruntfile
  • 直接在bower.json
  • 中覆盖

我建议您使用第二种解决方案,因为只需查看清单文件,您就可以看到将包含哪些文件,它更加冗长和易于理解。

以下是使用bower.json并包含额外asterisk.js文件的示例,但使用Gruntfile选项几乎相同。

{
  "name": "testingPurposes",
  "dependencies": {
    "codemirror": "~4.7.0"
  },
  "overrides": {
    "codemirror": {
      "main": ["lib/codemirror.js", "lib/codemirror.css", "mode/asterisk/asterisk.js"]
    }
  }
}

然后,在运行使用wiredep的任务时,如grunt serve,您会看到index.html中包含的其他文件。