Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Обсуждений тред (https://javascript.ru/forum/offtopic/47364-obsuzhdenijj-tred.html)

trikadin 02.06.2016 17:05

Цитата:

Сообщение от cyber
Уже часть стандарта но все хз как это заимплементить в браузере?)

Тут как раз наоборот) Не часть стандарта, но скоро будет имплементация в браузерах :D

cyber 03.06.2016 14:41

Как в webStorm/intellij или другое ide от jetBrains сделать push тэга, в git > repository > tag можно его создать и он будет локально, но как его пушнуть с ide?

bes 10.06.2016 18:26

никто не пытался заюзать grunt нестандартным образом?
скажем, если исходники в каталоге src, а node, nmp, grunt, Gruntfile.js, package.json в каком-нибудь другом (чисто локальное портативное использование с переносом Gruntfile.js и package.json в произвольный каталог)
без правок батников и кода (если юзать под виндой), как я понимаю, не обойтись, может кто уже выполнил эту работу :)

trikadin 10.06.2016 19:31

bes, во-первых, некрофилией занимаешься, с грантом-то. Во-вторых, покажи примерную файловую структуру.

cyber 10.06.2016 22:35

bes, у меня в проекте много под проектов и сделал так в корне приложения лежит gulpRuner который ищет gulpfile.js и запускает их каждый gulpfile в отдельно процессе (через cluster ).
потом так:
-проект1/..куча каталогов
-- gulpfile.js
---scripts
----webpack.config и входные файлы для этого проекта

-проект2/..куча каталогов
-- gulpfile.js
---scripts
----webpack.config и входные файлы для этого проекта
и т.д...

все gulpfile.js одинаковые, они расширяются базовым конфигом которые лежит в главном node_modules, и отличаются по минимуму. если нужно собрать все я использую gulpRunner или просто галп в нужно проекте.

П.с может не так тебя понял, тогда сори)

bes 10.06.2016 23:21

Цитата:

Сообщение от trikadin
bes, во-первых, некрофилией занимаешься, с грантом-то. Во-вторых, покажи примерную файловую структуру.

grunt умер что ли уже? :)

trikadin, cyber, например, при помощи grunt нужно склеить содержимое test1.js и test2.js, результат поместить в test.js
Код:

project_root
- dist
--  test.js появится здесь
- src
--  test1.js
--  test2.js
- ctr
--  grunt
---  node_modules
----    grunt
----    grunt-cli
----    ...
---  Gruntfile.js
---  package.json


cyber 10.06.2016 23:34

Цитата:

Сообщение от bes
grunt умер что ли уже?

я начал с гапла сразу)
ну если хочешь что бы у тебя был например универсальный инструмент, делаешь какой то кофиг, закидуешь на github например, и потом подключаешь в package.json
gulpConfig.js
module.exports = (gulp, params) => {
  gulp.task("join", () => {
    let files = fs.readdir(params.context);
    .... join

    fs.writeFile(params.join.output, output);
   });
}


gulpfile.js
let baseConfig = require("gulpConfig");
baseConfig( {
  context: __dirname,
  join:{
   output: "jon.test.js"
  }
} )


у меня это выглядит примерно так

destus 11.06.2016 00:23

cyber,
Непонятно зачем в context передавать __dirname, если в задаче было сказано что gruntfile/ gulpfile и исходники проекта в разных папках.

cyber 11.06.2016 01:44

destus, я на сколько я понял bes, хочет уневерсальный конфиг который не зависит от проекта, или я его понял не так

bes 11.06.2016 12:00

Цитата:

Сообщение от cyber
destus, я на сколько я понял bes, хочет уневерсальный конфиг который не зависит от проекта, или я его понял не так

поясню подробнее

в вышеуказанной структуре каталогов
package.json
{
  "name": "test_project",
  "version": "0.0.1",
  "devDependencies": {
    "grunt": "^1.0.1",
    "grunt-cli": "^1.2.0",
    "grunt-contrib-concat": "^1.0.1"
  }
}


Gruntfile.js
module.exports = function (grunt) {
	grunt.initConfig({
		concat: {
			test_target: {
			//нужно будет правильно указать пути
			  src: ['src/test1.js', 'src/test2.js'],
			  dest: 'dist/test.js',
			},
		},
	});
	grunt.loadNpmTasks("grunt-contrib-concat");
	grunt.registerTask("default", ["concat"]);
};


нужно добиться, например, того, чтобы из каталога с файлом ctr/grunt/Gruntfile.js просто вызывать команду grunt из консоли или добиться какого-нибудь другого работоспособного вызова
возможно test_project/ctr/grunt/node_modules/.bin нужно добавить в path, чтобы вызывать grunt.cmd оттуда из произвольного каталога, но этого недостаточно для того, чтобы всё получилось
в общем, попробовав несколько вариантов и не добившись положительного результата, до углублённого изучения кода grunt-a и его правки, спрашиваю, велосипедил ли кто-нибудь уже так? :)

сама мысль заюзать grunt из дополнительного каталога ctr (каталога для сборщиков) возникла на основе таких мыслей:
- есть отдельная сущность - сборщик, поэтому надо выделить ей отдельный каталог, внутри этого каталога для каждого сборщика выделить по отдельному каталогу
сборщик использует файлы в каталоге src, чтобы сформировать содержимое каталога dist
- довольно убого и нелогично выглядит, когда все конфиги, build-файлы и т.п. лежат в куче среди собственно исходных файлов или рядом с ними, и, чем больше таких файлов, тем более убого всё это выглядит
например, в случае с grunt
это могло бы выглядеть так
project_root
- dist
- src
--  test1.js
--  test2.js
- node_modules
- Gruntfile.js
- package.json

ещё хуже так, так как дополнительные файлы и каталоги не относятся к исходникам, для которых выделен отдельный каталог src
project_root
- dist
- src
--  test1.js
--  test2.js
--  node_modules
--  Gruntfile.js
-- package.json


Часовой пояс GMT +3, время: 19:36.