Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何定义从url模块提取的路径名?_Javascript_Node.js_Ecmascript 6_Es6 Modules_Es6 Module Loader - Fatal编程技术网

Javascript 如何定义从url模块提取的路径名?

Javascript 如何定义从url模块提取的路径名?,javascript,node.js,ecmascript-6,es6-modules,es6-module-loader,Javascript,Node.js,Ecmascript 6,Es6 Modules,Es6 Module Loader,这是我的server.js文件代码片段。该文件使用ES6格式从http模块导入http,它还要求url能够提取url的不同部分。我定义了一个名为pathname的变量,并将其设置为url.paerse(req.url.pathname) 我还有一个router.js文件,它应该是提取路径名的根请求 function route(){ console.log(`About to route a request for ${pathname} `); } export {route}; 然后

这是我的server.js文件代码片段。该文件使用ES6格式从http模块导入http,它还要求url能够提取url的不同部分。我定义了一个名为pathname的变量,并将其设置为url.paerse(req.url.pathname)

我还有一个router.js文件,它应该是提取路径名的根请求

function route(){
  console.log(`About to route a request for ${pathname} `);
}

export {route};
然后我有我的index.js文件,我在其中导入所有模块,并使用index.js作为我的应用程序的入口点。 我正在从server.js文件导入start函数,并从我的router.js文件导入require a router

import {start} from "./server";

let router = require("./router");
start(router.route); 
当我运行代码时,我得到以下错误

                         ```PS C:\Users\paullaster-geek\OneDrive\Desktop\Projects\Dive node> node -r 
                            esm index.js
                            Response ready
                            Request for / recieved
                            ReferenceError: pathname is not defined
                            at route (C:\Users\paullaster-geek\OneDrive\Desktop\Projects\Dive 
                            node\router.js:2:49)
                            at Server.onRequest (C:\Users\paullaster- 
                            geek\OneDrive\Desktop\Projects\Dive node\server.js:9:9)
                            at Server.emit (events.js:314:20)
                            at Server.EventEmitter.emit (domain.js:486:12)
                            at parserOnIncoming (_http_server.js:781:12)
                            at HTTPParser.parserOnHeadersComplete (_http_common.js:119:17)
                            PS C:\Users\paullaster-geek\OneDrive\Desktop\Projects\Dive node> 
                             

您的问题在此函数声明中。您应该将
路径名
作为参数接收:

function route(pathname){
  console.log(`About to route a request for ${pathname} `);
}
函数路由(路径名){}运行良好。
function route(pathname){
  console.log(`About to route a request for ${pathname} `);
}