Gulp 查看elm包中的源目录

Gulp 查看elm包中的源目录,gulp,elm,Gulp,Elm,使用elm 0.18 如何让elm查看src/文件夹中的所有模块?我已将模块安排到目录中,但当我将模块放入src/views/user时,会出现类似我找不到模块'viewsurlogin'的错误。 我已以这种方式将文件添加到elm package,但它仍然找不到除兄弟文件以外的任何文件: "source-directories": [ "./src", "./src/views/", "./src/views/user/", ... "./dist" ],

使用elm 0.18

如何让elm查看
src/
文件夹中的所有模块?我已将模块安排到目录中,但当我将模块放入
src/views/user时,会出现类似
我找不到模块'viewsurlogin'
的错误。

我已以这种方式将文件添加到
elm package
,但它仍然找不到除兄弟文件以外的任何文件:

"source-directories": [
    "./src",
    "./src/views/",
    "./src/views/user/",
    ...
    "./dist"
],
最后,我想告诉
elm包
查找
src/
中的所有文件。如何解决这些问题

编辑:我也在用大口喝

// gulpfile.js

var gulp = require('gulp');
var elm = require('gulp-elm');
var gutil = require('gulp-util');
var plumber = require('gulp-plumber');
var connect = require('gulp-connect');

// File paths
var paths = {
  dest: 'dist',
  elm: 'src/*.elm',
  static: 'src/*.{html,css}'
};

// Init Elm
gulp.task('elm-init', elm.init);

// Compile Elm to HTML
gulp.task('elm', ['elm-init'], function(){
    return gulp.src(paths.elm)
        .pipe(plumber())
        .pipe(elm())
        .pipe(gulp.dest(paths.dest));
});

// Move static assets to dist
gulp.task('static', function() {
    return gulp.src(paths.static)
        .pipe(plumber())
        .pipe(gulp.dest(paths.dest));
});

// Watch for changes and compile
gulp.task('watch', function() {
    gulp.watch(paths.elm, ['elm']);
    gulp.watch(paths.static, ['static']);
});

// Local server
gulp.task('connect', function() {
    connect.server({
        root: 'dist',
        port: 3000
    });
});

// Main gulp tasks
gulp.task('build', ['elm', 'static']);
gulp.task('default', ['connect', 'build', 'watch']);

我会大写你的目录,然后你可以使用

import Views.User.ViewsUserLogin as ViewsUserLogin 
而ViewsUserLogin的顶部需要读取

module Views.User.ViewsUserLogin exposing (..)
(注:您可能有使用gulp的理由,但Elm支持webpack的热加载,这使得开发更加简化—请参阅示例)


(pps Elm往往不像javascript那样将文件分开,而且我从来没有做过像你建议的那样在大型项目中进行双重嵌套-可能值得你看)

我会利用你的目录,然后你可以使用

import Views.User.ViewsUserLogin as ViewsUserLogin 
而ViewsUserLogin的顶部需要读取

module Views.User.ViewsUserLogin exposing (..)
(注:您可能有使用gulp的理由,但Elm支持webpack的热加载,这使得开发更加简化—请参阅示例)


(pps Elm往往不像javascript那样将文件分开,而且我从来没有做过类似于您在大型项目中建议的双重嵌套-可能值得您观看)

非常好,不需要更改gulp或Elm包中的任何内容。查看网页包和目录重组。如果我将一个模块命名为Views.User.Foo,而另一个模块命名为Views.Blog.Foo,会不会发生冲突?一点也不会。要么不要将
作为
引用所有完全限定的内容,要么使用例如
import Views.User.Foo作为UserFoo
另外,我刚刚运行了您的webpack repo。非常顺利。webpack与gulp for elm相比还有其他优势吗?非常好,不需要更改gulp或elm包中的任何内容。查看网页包和目录重组。如果我将一个模块命名为Views.User.Foo,而另一个模块命名为Views.Blog.Foo,会不会发生冲突?一点也不会。要么不要将
作为
引用所有完全限定的内容,要么使用例如
import Views.User.Foo作为UserFoo
另外,我刚刚运行了您的webpack repo。非常顺利。webpack比gulp for elm还有其他优势吗?