2014-09-02 78 views
4

我正在开发一个应用myapp使用angularJS和Yeoman Generator。这包括Bower管理依赖关系,Grunt将这些依赖关系绑定到index.html(=它根据bower配置和依赖关系生成包含所有脚本和链接的index.html文件)。鲍尔和依赖开发

我有angular-gantt作为依赖项,它通过Bower作为单个.js文件分发。

因为我想贡献angular-gantt,我使用bower link从本地克隆的git存储库读取源代码。

,但我仍然需要从myapp覆盖凉亭main财产使用javascript source files from this folder,而不是single distributed one

是否有一种自动化的方式来实现此目的,而不是逐个列出每个源文件?是否有一些发电机从源头建立这个列表?

MYAPP/bower.json

{ 
    "name": "myapp", 
    "version": "0.0.0", 
    "dependencies": { 
    ... 
    "angular-gantt": "~0.6.1", 
    ... 
    }, 
    "devDependencies": { 
    ... 
    }, 
    "overrides": { 
    ... 
    "angular-gantt": { 
     "main": [ // <= How to avoid listing those files manually ? 
     "file1.js", 
     "file2.js", 
     "file3.js", 
     "file4.js", 
     .... 
     ] 
    }, 
    ... 
    } 
} 

角甘特/ bower.json

{ 
    "name": "angular-gantt", 
    "version": "0.6.1", 
    "homepage": "https://github.com/Schweigi/angular-gantt", 
    "authors": [ 
    "Schweigi" 
    ], 
    "description": "A Gantt chart directive for Angular.js without any other dependencies.", 
    "main": [ 
    "./assets/angular-gantt.js", 
    "./assets/gantt.css" 
    ], 
    ....... 
} 
+1

这是一个有趣的问题。我知道Visual Studio允许您在文件中放入JavaScript注释,以声明它所依赖的内容,但我不确定是否存在非Visual Studio解决方案。 – 2014-09-02 13:06:34

+0

你为什么要重写bower'main'属性而不使用单个分布的属性? – user3995789 2014-09-02 13:16:09

+0

如果我做出改变,我不希望他们在正确的源文件中。我不想花费时间从分布式文件复制/粘贴到源文件。 – Toilal 2014-09-02 13:20:36

回答

1

如果其他人有这个问题,这里是我的解决方案终于找到了。

angular-gantt正在使用grunt concatuglify,它们都支持sourceMap选项。启用后,会生成一个源映射以及分配.js文件。

Intellij IDEA can read this sourcemap从真实源码进行调试,同时将分布式文件保留在运行时环境中。这不需要配置,因为sourceMap文件名作为注释添加到分配.js文件的末尾。

使用grunt文件watch,可以在更改源时自动生成缩小文件。

因此,通过使用支持sourceMap的IDE和grunt watch来检查更改并在源更改上构建分布式.js文件,问题就解决了。