Typescript 防止;使用“严格的”;打字稿?
当尝试在iOS设备上加载我的应用程序时,我遇到以下错误:Typescript 防止;使用“严格的”;打字稿?,typescript,Typescript,当尝试在iOS设备上加载我的应用程序时,我遇到以下错误: VMundefined bundle.js:1722语法错误:意外关键字'const'。严格模式下不支持常量声明。 这个错误发生在iPhone 5s/6s+上,我试过几款不同的iPad(不记得是哪款)。它在HTC one上也不起作用。我试过的任何三星/windows手机上都没有出现此错误。它也适用于台式机。(我还没有尝试在mac上运行它) 下面是bundle.js中的代码行 {}],12:[function(require,module,
VMundefined bundle.js:1722语法错误:意外关键字'const'。严格模式下不支持常量声明。
这个错误发生在iPhone 5s/6s+上,我试过几款不同的iPad(不记得是哪款)。它在HTC one上也不起作用。我试过的任何三星/windows手机上都没有出现此错误。它也适用于台式机。(我还没有尝试在mac上运行它)
下面是bundle.js中的代码行
{}],12:[function(require,module,exports){
"use strict";
const guage_1 = require("./charts/kpi/guage");
const stacked_1 = require("./charts/area/stacked");
const barChart_1 = require("./charts/compare/barChart");
当我从bundle.js中删除“use strict”时,它可以在所有设备上正常工作。只是想知道是否有办法确保typescript不使用“use strict”进行编译,或者解决iOS设备的问题
这是我的gulpfile用于编译(遵循typescripts上发布的指南)
您可以使用中的
--noimplicitustestrict
-add“noimplicitustestrict”:true
编译到“编译器选项”
这样做将防止编译器发出
“use strict”
我注意到,如果我们在名称空间中声明类,那么“use strict”就不会出现。所以最好在名称空间内声明类。
var gulp = require('gulp'),
sourcemaps = require('gulp-sourcemaps'),
source = require('vinyl-source-stream'),
tsify = require('tsify'),
browserSync = require('browser-sync'),
postcss = require('gulp-postcss'),
uglify = require('gulp-uglify'),
concat = require('gulp-concat'),
rename = require('gulp-rename'),
watchify = require("watchify"),
browserify = require('browserify'),
gutil = require("gulp-util"),
buffer = require('vinyl-buffer'),
processorArray = [
...
],
watchedBrowserify = watchify(browserify({
basedir: '.',
debug: true,
entries: ['src/main.ts'],
cache: {},
packageCache: {}
}).plugin(tsify)),
devPlugin = './src/plugins/';
function bundle() {
return watchedBrowserify
.bundle()
.pipe(source('bundle.js'))
.pipe(gulp.dest("dist"));
}
gulp.task('default', ['styles', 'browser-sync', 'watch'], bundle, function() {
return browserify({
basedir: '.',
debug: true,
entries: ['src/main.ts'],
cache: {},
packageCache: {}
})
.plugin(tsify)
.transform("babelify")
.bundle()
.pipe(source('bundle.js'))
.pipe(buffer())
.pipe(sourcemaps.init({
loadMaps: true
}))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('dist'))
});
watchedBrowserify.on("update", bundle);
watchedBrowserify.on("log", gutil.log);