@@ -68,7 +68,7 @@ In `src`, create the file `main.ts`:
68
68
function hello(compiler : string ) {
69
69
console .log (` Hello from ${compiler } ` );
70
70
}
71
- hello (" TypeScript" );
71
+ hello (' TypeScript' );
72
72
```
73
73
74
74
In the project root, ` proj ` , create the file ` tsconfig.json ` :
@@ -90,14 +90,14 @@ In the project root, `proj`, create the file `tsconfig.json`:
90
90
In the project root, create the file ` gulpfile.js ` :
91
91
92
92
``` js
93
- var gulp = require (" gulp" );
94
- var ts = require (" gulp-typescript" );
95
- var tsProject = ts .createProject (" tsconfig.json" );
93
+ var gulp = require (' gulp' );
94
+ var ts = require (' gulp-typescript' );
95
+ var tsProject = ts .createProject (' tsconfig.json' );
96
96
97
- gulp .task (" default" , function () {
97
+ gulp .task (' default' , function () {
98
98
return tsProject .src ()
99
99
.pipe (tsProject ())
100
- .js .pipe (gulp .dest (" dist" ));
100
+ .js .pipe (gulp .dest (' dist' ));
101
101
});
102
102
```
103
103
@@ -126,9 +126,9 @@ export function sayHello(name: string) {
126
126
Now change the code in ` src/main.ts ` to import ` sayHello ` from ` greet.ts ` :
127
127
128
128
``` ts
129
- import { sayHello } from " ./greet" ;
129
+ import { sayHello } from ' ./greet' ;
130
130
131
- console .log (sayHello (" TypeScript" ));
131
+ console .log (sayHello (' TypeScript' ));
132
132
```
133
133
134
134
Finally, add ` src/greet.ts ` to ` tsconfig.json ` :
@@ -193,34 +193,34 @@ Create a file in `src` named `index.html`:
193
193
Now change ` main.ts ` to update the page:
194
194
195
195
``` ts
196
- import { sayHello } from " ./greet" ;
196
+ import { sayHello } from ' ./greet' ;
197
197
198
198
function showHello(divName : string , name : string ) {
199
199
const elt = document .getElementById (divName );
200
200
elt .innerText = sayHello (name );
201
201
}
202
202
203
- showHello (" greeting" , " TypeScript" );
203
+ showHello (' greeting' , ' TypeScript' );
204
204
```
205
205
206
206
Calling ` showHello ` calls ` sayHello ` to change the paragraph's text.
207
207
Now change your gulpfile to the following:
208
208
209
209
``` js
210
- var gulp = require (" gulp" );
211
- var browserify = require (" browserify" );
210
+ var gulp = require (' gulp' );
211
+ var browserify = require (' browserify' );
212
212
var source = require (' vinyl-source-stream' );
213
- var tsify = require (" tsify" );
213
+ var tsify = require (' tsify' );
214
214
var paths = {
215
215
pages: [' src/*.html' ]
216
216
};
217
217
218
- gulp .task (" copy-html" , function () {
218
+ gulp .task (' copy-html' , function () {
219
219
return gulp .src (paths .pages )
220
- .pipe (gulp .dest (" dist" ));
220
+ .pipe (gulp .dest (' dist' ));
221
221
});
222
222
223
- gulp .task (" default" , gulp .series (gulp .parallel (' copy-html' ), function () {
223
+ gulp .task (' default' , gulp .series (gulp .parallel (' copy-html' ), function () {
224
224
return browserify ({
225
225
basedir: ' .' ,
226
226
debug: true ,
@@ -231,7 +231,7 @@ gulp.task("default", gulp.series(gulp.parallel('copy-html'), function () {
231
231
.plugin (tsify)
232
232
.bundle ()
233
233
.pipe (source (' bundle.js' ))
234
- .pipe (gulp .dest (" dist" ));
234
+ .pipe (gulp .dest (' dist' ));
235
235
}));
236
236
```
237
237
@@ -274,12 +274,12 @@ npm install --save-dev watchify fancy-log
274
274
Now change your gulpfile to the following:
275
275
276
276
``` js
277
- var gulp = require (" gulp" );
278
- var browserify = require (" browserify" );
277
+ var gulp = require (' gulp' );
278
+ var browserify = require (' browserify' );
279
279
var source = require (' vinyl-source-stream' );
280
- var watchify = require (" watchify" );
281
- var tsify = require (" tsify" );
282
- var fancy_log = require (" fancy-log" );
280
+ var watchify = require (' watchify' );
281
+ var tsify = require (' tsify' );
282
+ var fancy_log = require (' fancy-log' );
283
283
var paths = {
284
284
pages: [' src/*.html' ]
285
285
};
@@ -292,28 +292,28 @@ var watchedBrowserify = watchify(browserify({
292
292
packageCache: {}
293
293
}).plugin (tsify));
294
294
295
- gulp .task (" copy-html" , function () {
295
+ gulp .task (' copy-html' , function () {
296
296
return gulp .src (paths .pages )
297
- .pipe (gulp .dest (" dist" ));
297
+ .pipe (gulp .dest (' dist' ));
298
298
});
299
299
300
300
function bundle () {
301
301
return watchedBrowserify
302
302
.bundle ()
303
303
.pipe (source (' bundle.js' ))
304
- .pipe (gulp .dest (" dist" ));
304
+ .pipe (gulp .dest (' dist' ));
305
305
}
306
306
307
- gulp .task (" default" , gulp .series (gulp .parallel (' copy-html' ), bundle));
308
- watchedBrowserify .on (" update" , bundle);
309
- watchedBrowserify .on (" log" , fancy_log);
307
+ gulp .task (' default' , gulp .series (gulp .parallel (' copy-html' ), bundle));
308
+ watchedBrowserify .on (' update' , bundle);
309
+ watchedBrowserify .on (' log' , fancy_log);
310
310
```
311
311
312
312
There are basically three changes here, but they require you to refactor your code a bit.
313
313
314
314
1 . We wrapped our ` browserify ` instance in a call to ` watchify ` , and then held on to the result.
315
- 2 . We called ` watchedBrowserify.on(" update" , bundle); ` so that Browserify will run the ` bundle ` function every time one of your TypeScript files changes.
316
- 3 . We called ` watchedBrowserify.on(" log" , gutil.log); ` to log to the console.
315
+ 2 . We called ` watchedBrowserify.on(' update' , bundle); ` so that Browserify will run the ` bundle ` function every time one of your TypeScript files changes.
316
+ 3 . We called ` watchedBrowserify.on(' log' , gutil.log); ` to log to the console.
317
317
318
318
Together (1) and (2) mean that we have to move our call to ` browserify ` out of the ` default ` task.
319
319
And we have to give the function for ` default ` a name since both Watchify and Gulp need to call it.
@@ -347,23 +347,23 @@ npm install --save-dev gulp-uglify vinyl-buffer gulp-sourcemaps
347
347
Now change your gulpfile to the following:
348
348
349
349
``` js
350
- var gulp = require (" gulp" );
351
- var browserify = require (" browserify" );
350
+ var gulp = require (' gulp' );
351
+ var browserify = require (' browserify' );
352
352
var source = require (' vinyl-source-stream' );
353
- var tsify = require (" tsify" );
353
+ var tsify = require (' tsify' );
354
354
var uglify = require (' gulp-uglify' );
355
355
var sourcemaps = require (' gulp-sourcemaps' );
356
356
var buffer = require (' vinyl-buffer' );
357
357
var paths = {
358
358
pages: [' src/*.html' ]
359
359
};
360
360
361
- gulp .task (" copy-html" , function () {
361
+ gulp .task (' copy-html' , function () {
362
362
return gulp .src (paths .pages )
363
- .pipe (gulp .dest (" dist" ));
363
+ .pipe (gulp .dest (' dist' ));
364
364
});
365
365
366
- gulp .task (" default" , gulp .series (gulp .parallel (' copy-html' ), function () {
366
+ gulp .task (' default' , gulp .series (gulp .parallel (' copy-html' ), function () {
367
367
return browserify ({
368
368
basedir: ' .' ,
369
369
debug: true ,
@@ -378,7 +378,7 @@ gulp.task("default", gulp.series(gulp.parallel('copy-html'), function () {
378
378
.pipe (sourcemaps .init ({loadMaps: true }))
379
379
.pipe (uglify ())
380
380
.pipe (sourcemaps .write (' ./' ))
381
- .pipe (gulp .dest (" dist" ));
381
+ .pipe (gulp .dest (' dist' ));
382
382
}));
383
383
```
384
384
0 commit comments