Привета У меня есть очень простого модуль машинописиМашинописи генерироваться JavaScript (уменьшенный через глотку) потери его обработчик при вызове его в другом яваскрипте
export module myFirstPackage {
export class test {
description : string
constructor() {
this.description = "This is a test module class";
}
public getDescription() {
return this.description;
}
}
export function printDescription() : string {
alert(new test().getDescription);
}
}
Я создал файл яваскрипт и обезображенный, я стараюсь затем использовать изуродованный файл в другом приложении javascript в качестве библиотеки, но как я могу получить обработчик генерируемого ts javascript? Я не могу получить к нему доступ через свое имя модуля.
Я uglifyingt его через глотку
мой файл глотком выглядит следующим образом
var gulp = require("gulp");
var watchify = require("watchify");
var browserify = require("browserify");
var source = require('vinyl-source-stream');
var tsify = require("tsify");
var gutil = require("gulp-util");
var uglify = require('gulp-uglify');
var sourcemaps = require('gulp-sourcemaps');
var buffer = require('vinyl-buffer');
var sass = require('gulp-sass');
var minifyCss = require('gulp-minify-css');
var concat = require('gulp-concat');
var rename = require('gulp-rename');
//Variables
var conf = {
html: ['src/html/**/*.html'],
scss: ['src/scss/**/*.scss'],
jsdistAll: 'src/js/',
jsdist: 'www/js/',
htmldist: 'www/templates/',
cssdist: 'www/css/',
jsfilename: 'all.js',
cssfilename: 'style.css',
tsentry: 'src/ts/main.ts',
debugts: true
};
//TS code handling
var watchedBrowserify = watchify(browserify({
basedir: '.',
debug: conf.debugts,
entries: [conf.tsentry],
cache: {},
packageCache: {}
}).plugin(tsify));
function bundle() {
return watchedBrowserify
.bundle()
.pipe(source(conf.jsfilename))
.pipe(gulp.dest(conf.jsdistAll))
.pipe(buffer())
.pipe(sourcemaps.init({loadMaps: true}))
.pipe(uglify())
.pipe(rename({ extname: '.min.js' }))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest(conf.jsdist));
}
watchedBrowserify.on("update", bundle);
watchedBrowserify.on("log", gutil.log);
//Html handling
gulp.task("html", function() {
return gulp.src(conf.html)
.pipe(gulp.dest(conf.htmldist));
});
//Css handling
gulp.task('sass', function() {
return gulp.src(conf.scss)
.pipe(sourcemaps.init())
.pipe(sass({includePaths : ['_/'+conf.scss]}).on('error', sass.logError))
.pipe(gulp.dest(conf.cssdist))
.pipe(minifyCss({
keepSpecialComments: 0
}))
.pipe(rename({ extname: '.min.css' }))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest(conf.cssdist))
});
//Watch task
gulp.task('watch', function() {
gulp.watch(conf.html, ['html']);
gulp.watch(conf.sass, ['sass']);
});
//initialize task
gulp.task("default", ["html", "sass", "watch"], bundle);
Другой вопрос о строке часы работы для HTML, но не для дерзости.
Конечно, я всегда могу вручную экспортировать модуль с помощью явного модуля подключения к объекту окна, но, хотя мне это не нужно. – user2412555