避免在已编译的javascript中使用require语句

时间:2017-02-09 16:08:20

标签: javascript typescript ecmascript-6

.ts文件中的以下声明:

import {jquery as $} from 'jquery';
import {socketio} from 'socket.io';

转化为:

var jquery_1 = require("jquery");
var socket_io_1 = require("socket.io");

现在浏览器无法识别require。出路是什么?我的tsconfg.json看起来像是:

{
    "compilerOptions": {
        "target": "es5",
        "outDir": "./dist",
        "allowJs": true,
        "module": "commonjs",
        "noEmitOnError": false,
        "noImplicitAny": false,
        "strictNullChecks": true
    },
    "include": [
        "index.ts",
        "./lib/**/*",
        "./public/**/*"
    ]
}

是否需要改变一些东西?

1 个答案:

答案 0 :(得分:0)

我使用http://my-domain/notifications将最终文件捆绑到浏览器兼容的javascript中。

browserify input.js -o output.js

例如Error: Cannot find module 'bufferutil' from ..可能会出现浏览器抛出的错误。在这种情况下,可以从npm安装相应的模块。