查看 elm-package 中的源目录
Viewing source-directories in elm-package
使用榆树 0.18。
如何让 elm 查看 src/
文件夹中的所有模块?我已将我的模块安排到目录中,但是当我将模块放入 src/views/user.
时,出现 I cannot find module 'ViewsUserLogin'
之类的错误
我已经以这种方式将文件添加到 elm-package
,但它仍然找不到除兄弟文件以外的任何内容:
"source-directories": [
"./src",
"./src/views/",
"./src/views/user/",
...
"./dist"
],
最后我想告诉elm-package
去寻找src/
里面的所有文件。我该如何解决这些问题?
编辑:我也在使用 gulp。
// 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 (..)
(ps 你可能有使用 gulp 的原因,但 Elm 支持使用 webpack 进行热加载,这使得开发更加简化 - 例如参见 [=12=])
(pps Elm 往往不会像 javascript 那样将文件分开正在观看 https://www.youtube.com/watch?v=XpDsk374LDE&t=1827s)
使用榆树 0.18。
如何让 elm 查看 src/
文件夹中的所有模块?我已将我的模块安排到目录中,但是当我将模块放入 src/views/user.
I cannot find module 'ViewsUserLogin'
之类的错误
我已经以这种方式将文件添加到 elm-package
,但它仍然找不到除兄弟文件以外的任何内容:
"source-directories": [
"./src",
"./src/views/",
"./src/views/user/",
...
"./dist"
],
最后我想告诉elm-package
去寻找src/
里面的所有文件。我该如何解决这些问题?
编辑:我也在使用 gulp。
// 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 (..)
(ps 你可能有使用 gulp 的原因,但 Elm 支持使用 webpack 进行热加载,这使得开发更加简化 - 例如参见 [=12=])
(pps Elm 往往不会像 javascript 那样将文件分开正在观看 https://www.youtube.com/watch?v=XpDsk374LDE&t=1827s)