mirror of
				https://kkgithub.com/actions/setup-python.git
				synced 2025-11-04 12:44:05 +08:00 
			
		
		
		
	
		
			
	
	
		
			56 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			56 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 
								 | 
							
								# which-module
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								> Find the module object for something that was require()d
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[](https://travis-ci.org/nexdrew/which-module)
							 | 
						||
| 
								 | 
							
								[](https://coveralls.io/github/nexdrew/which-module?branch=master)
							 | 
						||
| 
								 | 
							
								[](https://github.com/conventional-changelog/standard-version)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Find the `module` object in `require.cache` for something that was `require()`d
							 | 
						||
| 
								 | 
							
								or `import`ed - essentially a reverse `require()` lookup.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Useful for libs that want to e.g. lookup a filename for a module or submodule
							 | 
						||
| 
								 | 
							
								that it did not `require()` itself.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Install and Usage
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								npm install --save which-module
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								const whichModule = require('which-module')
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								console.log(whichModule(require('something')))
							 | 
						||
| 
								 | 
							
								// Module {
							 | 
						||
| 
								 | 
							
								//   id: '/path/to/project/node_modules/something/index.js',
							 | 
						||
| 
								 | 
							
								//   exports: [Function],
							 | 
						||
| 
								 | 
							
								//   parent: ...,
							 | 
						||
| 
								 | 
							
								//   filename: '/path/to/project/node_modules/something/index.js',
							 | 
						||
| 
								 | 
							
								//   loaded: true,
							 | 
						||
| 
								 | 
							
								//   children: [],
							 | 
						||
| 
								 | 
							
								//   paths: [ '/path/to/project/node_modules/something/node_modules',
							 | 
						||
| 
								 | 
							
								//            '/path/to/project/node_modules',
							 | 
						||
| 
								 | 
							
								//            '/path/to/node_modules',
							 | 
						||
| 
								 | 
							
								//            '/path/node_modules',
							 | 
						||
| 
								 | 
							
								//            '/node_modules' ] }
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## API
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								### `whichModule(exported)`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Return the [`module` object](https://nodejs.org/api/modules.html#modules_the_module_object),
							 | 
						||
| 
								 | 
							
								if any, that represents the given argument in the `require.cache`.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								`exported` can be anything that was previously `require()`d or `import`ed as a
							 | 
						||
| 
								 | 
							
								module, submodule, or dependency - which means `exported` is identical to the
							 | 
						||
| 
								 | 
							
								`module.exports` returned by this method.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								If `exported` did not come from the `exports` of a `module` in `require.cache`,
							 | 
						||
| 
								 | 
							
								then this method returns `null`.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## License
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ISC © Contributors
							 |