我想对我的代码进行浏览器,tsify和babelify。 Browserify和其他编译器之一正常工作,但它们却没有一起工作。 Babel似乎被忽略了(甚至不读.babelrc)。
我有以下gulp代码:
DownloadManager.Request downloadRequest = new DownloadManager.Request(uri);
downloadRequest.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE);
downloadRequest.setTitle(currentApp.getAppNameEng());
downloadRequest.setDestinationInExternalPublicDir(
Environment.DIRECTORY_DOWNLOADS,
currentApp.getAppNameEng() + ".apk"
);
final DownloadManager downloadManager =
(DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
downloadID = downloadManager.enqueue(downloadRequest);
有了这个babelrc
const gulp = require("gulp");
const browserify = require("browserify");
const source = require('vinyl-source-stream');
const tsify = require("tsify");
const babelify = require("babelify");
function build() {
var b = browserify({
basedir: '.',
debug: true,
cache: {},
entries: ['src/index.ts'],
packageCache: {}
});
return b
.plugin(tsify)
.transform(babelify)
.bundle()
.on("error", function (err) { console.log("Error: " + err.message); })
.pipe(source('build.js'))
.pipe(gulp.dest("build"));
}
gulp.task("build", build);
那些依赖项
{
"presets": ["minify"]
}
如前所述,即使我将babelrc更改为以下内容,也不会出错,只是不会缩小代码。
答案 0 :(得分:4)
尽管我不太清楚为什么上面的代码不起作用,但我找到了替代方法。
使用here提供的设置。请注意,为了使其正常工作,您必须将tsconfig中的if not x: ...
键的值更改为module
(而不是es5
)。这样看起来像这样:
es6