相关疑难解决方法(0)

Browserify basedir选项(类似RequireJS)

我想不出该怎么browserify basedir选项工程..

注意:我对整个basedir概念的理解可能是错的,因为我来自RequireJS(想想baseUrl).

编辑 确实我错了,但你仍然可以实现我试图做的paths选项,请参阅下面的答案.

我知道该basedir选项为您提供了.从静态根/基础目录中指定所有需要路径(以a开头)的能力(自由!)而不是来自process.cwd()..

这实际上让我发疯,我虽然这样的功能实现起来非常基础,并且很多人会遇到与我相同的问题,但网上实际上很少有关于如何正确设置的信息basedir选择..相信我,这不是直截了当的..

所以这是让我疯狂的基本例子.

给定以下文件结构:

js/
js/app.js
js/src/models/Person.js
js/src/views/PersonView.js
Run Code Online (Sandbox Code Playgroud)

并运行:

var browserify = require('browserify');
var gulp = require('gulp');

gulp.task('scripts', function() {

  var b = browserify('./app', {basedir: './js'});

  b.bundle().pipe(gulp.dest('./dist'));
});
Run Code Online (Sandbox Code Playgroud)

我希望能够进行以下require()调用PersonView.js:

var Person = require('./src/models/Person');
...
Run Code Online (Sandbox Code Playgroud)

而不是(显然工作......):

var Person = require('../models/Person');
...
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

Error: module "./src/models/Person" not found from "/Users/...some path.../js/src/views/PersonView.js"
Run Code Online (Sandbox Code Playgroud)

我对这个basedir选项缺少什么?

browserify gulp

11
推荐指数
1
解决办法
7965
查看次数

标签 统计

browserify ×1

gulp ×1