【问题标题】:MERN stack seedingMERN堆栈播种
【发布时间】:2022-08-07 14:27:52
【问题描述】:

是否可以播种 MERN 堆栈应用程序,因为我一直遇到的问题是模型的相对导入。例如:

Module not found: You attempted to import ../../backend/models/foo which falls outside of the project src/ directory. Relative imports outside of src/ are not supported.

基本上,是否可以在没有 CLI 的情况下播种 MERN 堆栈?

    标签: node.js reactjs mongodb express


    【解决方案1】:

    npm 包初始化 要创建项目文件夹,请通过终端进入该文件夹,然后运行以下命令:

    $ npm init
    

    现在它会问你一些关于包名、版本、入口点等的问题。如果你想保持默认,请按回车键。在那之后, 它创建一个名为 package.json 的文件。

    安装依赖项 现在,我想添加一些依赖项:

    $ npm i express mongoose body-parser bcryptjs validation
    

    键入或复制上面的命令,然后按回车键。

    bcryptjs 是 Niels Provos 和 David Mazières 设计的密码散列函数 body-parser 允许我们在整个请求中获取数据 express 是我们的主要框架 mongoose 用于与 MongoDB 连接/交互 验证(顾名思义)用于验证 现在我想将 nodemon 添加为开发依赖项。如果你不想添加这个,你可以跳过它——它是可选的。

    $ npm i -D nodemon
    

    nodemon 是一个实用程序,它将监视源中的任何更改并自动重新启动服务器。

    现在为我们的入口点创建一个名为 app.js 的文件。您可以使用以下命令从项目文件夹中创建它(在 Mac 上):

    $ touch app.js
    

    然后粘贴下面的代码:

       // app.js
    
    const express = require('express');
    
    const app = express();
    
    app.get('/', (req, res) => res.send('Hello world!'));
    
    const port = process.env.PORT || 8082;
    
    app.listen(port, () => console.log(`Server running on port ${port}`));
    

    现在,运行命令

    $ node app
    

    你会看到服务器在 8082 端口上运行。你也可以从浏览器中查看:打开浏览器并输入http://localhost:8082.

    此时,如果我们更改任何内容,我们需要手动重新启动服务器。但是如果我们设置了nodemon,那我们就不用每次都重启了; nodemon 将监视是否有任何更改并自动重新启动服务器。

    因此,您需要做的是对我们的 package.json 文件中的脚本进行一些更改。见下文:

    // package.json
    
    {
      "name": "mern_a_to_z",
      "version": "1.0.0",
      "description": "",
      "main": "app.js",
      "scripts": {
        "start": "node app.js",
        "app": "nodemon app.js",
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "repository": {
        "type": "git",
        "url": "git+https://github.com/nurislam03/MERN_A_to_Z.git"
      },
      "author": "Nur Islam",
      "license": "MIT",
      "bugs": {
        "url": "https://github.com/nurislam03/MERN_A_to_Z/issues"
      },
      "homepage": "https://github.com/nurislam03/MERN_A_to_Z#readme",
      "dependencies": {
        "bcryptjs": "^2.4.3",
        "body-parser": "^1.19.0",
        "express": "^4.17.1",
        "mongoose": "^5.5.15",
        "validation": "0.0.1"
      },
      "devDependencies": {
        "nodemon": "^1.19.1"
      }
    }
    

    因此,现在您可以使用以下命令运行您的项目:

    $ npm run app
    

    如果此时出现任何错误,请运行以下命令:

    $ npm install
    $ npm run app
    

    成功步骤后,您将看到正在运行的应用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-19
      • 2021-02-24
      • 2020-03-20
      • 1970-01-01
      • 2020-07-19
      • 1970-01-01
      相关资源
      最近更新 更多