代码之家  ›  专栏  ›  技术社区  ›  Rolando

如何在express中使用angular2 starter?

  •  -4
  • Rolando  · 技术社区  · 8 年前

    如何使用:

    https://github.com/gdi2290/angular-starter
    

    使用express framework?我可以很好地启动webpack dev服务器,但我想使用大量库,如cookieparser( https://www.npmjs.com/package/cookie-parser ).

    虽然npm start使用webpack dev服务器,但我不知道要在应用程序中使用什么文件。使用语句并导入cookieparser。。

    2 回复  |  直到 8 年前
        1
  •  1
  •   Rolando    8 年前

    在编写本文时的版本中,更新webpack。dev.js具有以下功能:

    node: {
      global: true,
      crypto: 'empty',
      process: true,
      module: false,
      clearImmediate: false,
      setImmediate: false,
      fs: 'empty',
      net: 'empty'
    }
    

    之后一切都应按预期进行。

        2
  •  1
  •   Cacoon    8 年前

    我只想跳进去告诉你,我有一个express服务器,可以与前端angular服务器进行通信,我将它们分开构建,这样我就不会用冗余库填充其中一个,然后在我准备好后,我只需要将“dist”的构建路径指向我的服务器文件夹,如下所示:

    "apps": [
        {
          "root": "src",
          "outDir": "server/dist", //<--- Here, I point to where my server.js, so i can simply build and its ready for production
          "assets": [
            "assets",
            "favicon.ico"
          ],
    

    这是我的整个服务器。我用node server启动的js。js公司

    let express = require('express');
    let passport = require('passport');
    let session = require('express-session');
    const config  = require('./server/auth/config');
    let oauth2orize = require('oauth2orize');
    const app = express();
    const cors = require('cors');
    const html = __dirname + '/dist';
    
    app.use(passport.initialize());
    app.use(passport.session());
    
    app.use(cors());
    app.options('*', cors());
    app.use('/api', require('./server/misc/routemanager'));
    
    /**
     * This line tells the server to provide our angular site (after running ng build with it)
     */
    app.use(express.static(html));
    app.get('*', function(req, res) {
        res.sendFile(html + '/index.html')
    });
    
    app.listen(4949, () => {
        console.log(`Node Express server listening on http://localhost:4949`);
    });
    

    现在,我可以随心所欲地构建我的express后端,并通过路由与它进行对话,并且仍然可以在一个节点启动中启动整个内容

    推荐文章