如何为 javascript 中的模块定义导出?
How to define export for a module in javascript?
嘿,我正在使用 react-app 做一个小项目,我
一整天都在尝试为 this module 创建导出。
我已经用 npm 安装了它,我想编辑它以便我可以在我的 app.js
中导入和使用它
我尝试使用 class\function\let 定义 "reddit" 并使用:
export default
module.exports
或者
import reddit from 'reddit.js';
var reddit = require('reddit.js');
并尝试使用模块中的一个简单函数进行检查:
console.log(reddit.hot('cats'));
但我仍然得到:
Uncaught TypeError: reddit.hot is not a function
我有点迷茫,我做错了什么?
模块使用了window.reddit全局变量。不要覆盖它!
因此,如果您在客户端,只需使用:
require('reddit.js')
//...
reddit.hot('cats')
对于服务器端 - 你必须做一些技巧才能让它工作,因为在服务器端你没有 'window' 全局变量。
更新:
后端使用示例:
const window = {};
const r = require('./reddit.js') // You don't really use r
const reddit = window.reddit;
reddit.hot('cats')
Reddit 不导出任何内容,因为它主要设计为作为脚本标签添加!
// So for CommonJS module:
require('reddit.js');
//And for ES6 modules
import 'reddit.js';
并且您将能够通过 window 对象访问 reddit 和 reddit.hot() 方法。
嘿,我正在使用 react-app 做一个小项目,我 一整天都在尝试为 this module 创建导出。
我已经用 npm 安装了它,我想编辑它以便我可以在我的 app.js
中导入和使用它我尝试使用 class\function\let 定义 "reddit" 并使用:
export default
module.exports
或者
import reddit from 'reddit.js';
var reddit = require('reddit.js');
并尝试使用模块中的一个简单函数进行检查:
console.log(reddit.hot('cats'));
但我仍然得到:
Uncaught TypeError: reddit.hot is not a function
我有点迷茫,我做错了什么?
模块使用了window.reddit全局变量。不要覆盖它! 因此,如果您在客户端,只需使用:
require('reddit.js')
//...
reddit.hot('cats')
对于服务器端 - 你必须做一些技巧才能让它工作,因为在服务器端你没有 'window' 全局变量。
更新:
后端使用示例:
const window = {};
const r = require('./reddit.js') // You don't really use r
const reddit = window.reddit;
reddit.hot('cats')
Reddit 不导出任何内容,因为它主要设计为作为脚本标签添加!
// So for CommonJS module:
require('reddit.js');
//And for ES6 modules
import 'reddit.js';
并且您将能够通过 window 对象访问 reddit 和 reddit.hot() 方法。