简体   繁体   中英

The node.js file tells me the exports is undefined

I've attempted to make a Discord basic bot and I've done everything to create the bot and import it into Discord and now see my bot offline on Discord. However, when I attempt to bring the bot online I get an error exports is undefined.

I've looked at the code to try and work out what is causing the error and I've looked at other peoples issues related to the exports issue but I am unsure on how to move forward.

The error refers to line 34 of node.js which is

var create = exports.create = function (node, template, isNotTop) {

Here is the full script:

'use strict'

var defaultTemplate = {
  package: {
    version: '',
    dependencies: {},
    devDependencies: {},
    optionalDependencies: {}
  },
  loaded: false,
  children: [],
  requiredBy: [],
  requires: [],
  missingDeps: {},
  missingDevDeps: {},
  phantomChildren: {},
  path: null,
  realpath: null,
  location: null,
  userRequired: false,
  save: false,
  saveSpec: null,
  isTop: false,
  fromBundle: false
}

function isLink (node) {
  return node && node.isLink
}
function isInLink (node) {
  return node && (node.isInLink || node.isLink)
}

var create = exports.create = function (node, template, isNotTop) {
  if (!template) template = defaultTemplate
  Object.keys(template).forEach(function (key) {
    if (template[key] != null && typeof template[key] === 'object' && !(template[key] instanceof Array)) {
      if (!node[key]) node[key] = {}
      return create(node[key], template[key], true)
    }
    if (node[key] != null) return
    node[key] = template[key]
  })
  if (!isNotTop) {
    // isLink is true for the symlink and everything inside it.
    // by contrast, isInLink is true for only the things inside a link
    if (node.isLink == null) node.isLink = isLink(node.parent)
    if (node.isInLink == null) node.isInLink = isInLink(node.parent)
    if (node.fromBundle == null) {
      node.fromBundle = false
    }
  }
  return node
}

exports.reset = function (node) {
  reset(node, new Set())
}

function reset (node, seen) {
  if (seen.has(node)) return
  seen.add(node)
  var child = create(node)

  // FIXME: cleaning up after read-package-json's mess =(
  if (child.package._id === '@') delete child.package._id

  child.isTop = false
  child.requiredBy = []
  child.requires = []
  child.missingDeps = {}
  child.missingDevDeps = {}
  child.phantomChildren = {}
  child.location = null

  child.children.forEach(function (child) { reset(child, seen) })
}    

My Discord.js file

const Discord = require('discord.js');
const bot - new Discord.Client();

const token = '';

bot.on('ready', () =>{
console.log('This bot is online!');
{)

bot.login(token);

To see the bot come online.

编写这个exports.create = function (node, template, isNotTop)而不是

var create = exports.create = function (node, template, isNotTop)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM