Node初学(一)require方法

在node中模块中,上下文提供require()方法来引入外部模块:

var test=require('./index.js');

在require中传入模块标识,其实就是参数,可以 . 、 .. 开头的相对路径,或者绝对路径,也可以是文件夹。

在node中,模块分为两类:一类是node提供的模块,为核心模块,另一类是用户编写的模块,为文件模块。

在node中引入模块,需要经历三个过程:

1.路径分析

2.文件定位

3.编译执行

核心模块加载只需要经历路径分析,因为在node进程启动的时候,部分核心模块已经加载进内存中。


node中也有缓存加载,node对引用过的模块都会进行缓存,浏览器缓存的是文件,node缓存的是编译和执行后的对象;

在缓存加载机制中,核心模块缓存最先加载,文件模块缓存低于核心模块加载。


文件定位

require在分析标识符中,会出现不包含文件扩展名的情况,这种情况node会按js、json、node的次序补充扩展名,依次尝试。如果尝试没有获取到相对应的文件,却得到一个目录,node也会把这个目录当成一个包来处理。

看下图:require加载文件模块zhang,但是没有指明是zhang文件模块下那个模块。默认是index.js、index.json、index.node


node在目录分析中没有定义成功任何文件,则会进入下一个模块路径进行查找,全部查找完毕木有,则会抛出错误


缓存加载<--核心模块缓存<--文件模块缓存<--核心模块加载<--文件模块加载<--详细路径<--简单目录



  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于一个初学者来说,写一个商城是一个非常有挑战性的任务。以下是一个简单的Node.js和Vue.js商城教程: 1. 创建一个新的Node.js项目 首先,我们需要安装Node.js和npm。然后创建一个新的Node.js项目,可以使用以下命令: ``` mkdir my-shop cd my-shop npm init ``` 这将创建一个新的npm项目,并要求您填写一些基本信息。按照提示输入即可。 2. 安装和配置Express.js 在Node.js中,Express.js是一个非常流行的Web框架。我们将使用Express.js来构建我们的商城应用程序。首先,我们需要安装Express.js和其他一些必要的库: ``` npm install express body-parser cors ``` 接下来,在项目的根目录中创建一个新的文件app.js,然后添加以下内容: ``` const express = require('express'); const bodyParser = require('body-parser'); const cors = require('cors'); const app = express(); app.use(bodyParser.json()); app.use(cors()); app.listen(3000, () => { console.log('Server is running on port 3000'); }); ``` 这将创建一个新的Express.js应用程序,并将其监听在3000端口上。 3. 创建Vue.js应用程序 现在,我们需要创建一个Vue.js应用程序,用于构建我们的商城前端。您可以使用Vue CLI快速创建Vue.js应用程序。首先,确保已经安装了Vue CLI: ``` npm install -g @vue/cli ``` 然后,在项目的根目录中使用Vue CLI创建一个新的Vue.js应用程序: ``` vue create client ``` 按照提示输入即可,然后等待安装完成。 4. 配置Vue.js应用程序 现在,我们需要配置Vue.js应用程序,以便它可以与我们的Node.js后端通信。首先,打开client/src/main.js文件,并添加以下内容: ``` import Vue from 'vue' import App from './App.vue' import axios from 'axios' Vue.config.productionTip = false Vue.prototype.$http = axios.create({ baseURL: 'http://localhost:3000/api' }) new Vue({ render: h => h(App), }).$mount('#app') ``` 这将配置Vue.js应用程序以使用axios库进行HTTP请求,并将其基本URL设置为http://localhost:3000/api。 接下来,我们需要在client/src/components目录中创建一个名为ProductList.vue的新组件。该组件将显示商城中的产品列表,并使用我们的Node.js后端与服务器通信。 5. 创建Node.js API 现在,我们需要为商城创建一些Node.js API。首先,我们需要在项目的根目录中创建一个名为routes.js的新文件,然后添加以下内容: ``` const express = require('express'); const router = express.Router(); router.get('/products', (req, res) => { const products = [ { id: 1, name: 'Product 1', price: 10 }, { id: 2, name: 'Product 2', price: 20 }, { id: 3, name: 'Product 3', price: 30 }, ]; res.json(products); }); module.exports = router; ``` 这将创建一个新的Express.js路由器,并为/products路径添加一个GET请求处理程序。该处理程序将返回一个包含三个产品的JSON数组。 接下来,我们需要在app.js文件中添加以下内容,以将我们的路由器添加到应用程序中: ``` const routes = require('./routes'); app.use('/api', routes); ``` 现在,我们的Node.js后端应该已经准备好了,可以使用以下命令启动它: ``` node app.js ``` 6. 显示产品列表 现在,我们需要在Vue.js应用程序中显示产品列表。首先,打开client/src/components/ProductList.vue文件,并添加以下内容: ``` <template> <div> <h1>Product List</h1> <ul> <li v-for="product in products" :key="product.id"> {{ product.name }} - {{ product.price }} </li> </ul> </div> </template> <script> export default { data() { return { products: [], }; }, mounted() { this.$http.get('/products').then(response => { this.products = response.data; }); }, }; </script> ``` 这将创建一个新的Vue.js组件,并使用我们之前定义的API从服务器获取产品列表。然后,我们可以在App.vue文件中使用该组件,如下所示: ``` <template> <div id="app"> <ProductList /> </div> </template> <script> import ProductList from './components/ProductList.vue'; export default { components: { ProductList, }, }; </script> ``` 现在,运行Vue.js应用程序,您应该能够在浏览器中看到一个简单的商城页面,其中包含三个产品的列表。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值