2014-09-02 4 views
4

Я разрабатываю приложение myapp с использованием angularJS с генератором Yeoman. Это включает в себя Bower для управления зависимостями и Grunt для подключения этих зависимостей к index.html (= Он генерирует файл index.html со всеми скриптами и ссылками на основе конфигурации и зависимостей bower).Разработка базы данных и зависимостей

У меня есть angular-gantt как зависимость, которая распространяется через Bower как отдельный файл .js.

Как я хочу внести свой вклад в angular-gantt, я использовал bower link для чтения источников из локального клонированного репозитория git.

Но я по-прежнему необходимо переопределить свойство становой main от myapp использовать 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. –

+0

Почему вы переопределяете свойство 'main' bower и не используете одно распределенное? – user3995789

+0

Если я вношу изменения, я не хочу, чтобы они находились в правильном исходном файле. Я не хочу тратить время на копирование/вставку изменений из распределенного файла в исходный файл. – Toilal

ответ

1

Если другие люди имеют эту проблему, вот решение я наконец нашел.

angular-gantt использует grunt concat и uglify это обе поддержки sourceMap опция. Когда включено, генерируется sourceMap вместе с файлом .js.

Intellij IDEA can read this sourcemap для отладки из реальных источников при сохранении распределенного файла в среде выполнения. Это не требует конфигурации, так как имя файла sourceMap добавляется в качестве комментария к концу файла распределения .js.

С файл grunt watch, миниатюрный файл может быть автоматически сгенерирован при изменении источников.

Таким образом, используя IDE, поддерживающий sourceMap, и грузите часы, чтобы проверить изменения и создать распределенный файл с изменениями источника, проблема решена.

Смежные вопросы