首页 文章

我可以在没有nodejs服务器的情况下在客户端使用webpack吗?

提问于
浏览
16

我正在尝试构建一个Web应用程序,我想在amazon s3上存储所有html,js和css文件,并通过api与一个安静的服务器进行通信 .

我正在尝试实现延迟加载,并可能使用react路由器进行路由 . 似乎webpack具有此功能代码拆分,其工作方式与延迟加载类似 .

但是,我发现的所有教程和示例都涉及webpack-dev-server,它是一个小型节点快速服务器 . 反正我是否可以在构建时生成bundle并将所有内容上传到amazon s3并实现与Angular的ocLazyLoading类似的东西?

1 回答

  • 10

    绝对可以创建一个静态包js文件,您可以在不包含 webpack-dev-server 的 生产环境 代码中使用该文件 .

    请参阅this example作为参考(注意:我是此回购的所有者) . webpack.prod.config.js 确实通过node.js使用webpack创建了一个 生产环境 就绪的bundle文件,它本身不再需要node.js.因此,您可以简单地将其作为简单的静态文件(在实例中完成) .

    关键的区别在于如何在开发和 生产环境 环境中编写入口点 . 对于开发 webpack-dev-server 正在使用中

    module.exports = {
        entry: [
            'webpack-dev-server/client?http://localhost:3000',
            'webpack/hot/only-dev-server',
            './src/index'
        ],
        // ...
    }
    

    在 生产环境 环境中,您可以跳过 webpack-dev-server 和热重装部件

    module.exports = {
        entry: [
            './src/index'
        ],
        // ...
    }
    

    如果要将代码拆分为多个捆绑包,可能需要查看如何定义multiple entry points并相应地链接文件 .

相关问题