Gulp, пересканировать и переназначить

63
5

Я пытаюсь найти хороший способ сопоставить каталоги с браузером и глотком, поэтому у меня нет большого количества путей, которые связывают это:

var uriparser = require('../../../app/assets/javascripts/app/module/mymodule.coffee')

Поэтому я пытаюсь использовать remapify с глотком, поэтому у меня есть рецепт:

var gulp = require('gulp');
var browserify = require('browserify');
var remapify = require('remapify');
var source = require('vinyl-source-stream');

gulp.task("test", function () {
var b = browserify({entries:['./spec/javascripts/modules/tests.coffee'],
extensions: ['.coffee']
});

b.plugin(remapify, [
{
src: './app/assets/javascripts/app/**/*.coffee'
, expose: 'app'
, cwd:__dirname
}

])

libs.forEach(function (lib) {
b.external(lib);
});

return b.bundle()
.pipe(source("app.js"))
.pipe(gulp.dest('./spec/javascripts/specs/helpers'));
});

Не уверен, что мне не хватает, но он просто не правильно отображает пути, может быть, это не лучший инструмент, но попробовал немало вариантов без успеха, поэтому любая помощь была бы замечательной!

спросил(а) 2021-01-25T22:49:37+03:00 4 месяца, 3 недели назад
1
Решение
63

Remapify теперь уважает список расширений, настроенных в браузере. По умолчанию это js и json, но вы можете изменить его с помощью опции extensions браузера. Не уверен, какой формат будет в глотке, но вот что я делаю в хрюке:

  grunt.initConfig
browserify:
app:
dest: 'public/scripts/main.js'
src: ['client/app/**/*.coffee']
options:
preBundleCB: (b) ->
b.plugin remapify, [
cwd: './client/app'
src: '**/*.coffee'
expose: 'app'
]

transform: ['coffeeify']
browserifyOptions:
debug: true
extensions: ['.coffee', '.js']

ответил(а) 2021-01-25T22:49:37+03:00 4 месяца, 3 недели назад
63

У вас есть хотя бы одна проблема из-за: https://github.com/joeybaker/remapify/pull/4.


В настоящее время Remapify не поддерживает расширения, такие как "кофе". Вы можете использовать https://github.com/gruntjs/grunt-contrib-coffee, чтобы сначала скомпилировать ваш CoffeeScript в JavaScript, а затем переделать его.

ответил(а) 2021-01-25T22:49:37+03:00 4 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема