javascript - module.exports から必要なものを取得できません

okwaves2024-01-25  6

「prefix.js」からプレフィックスをエクスポートしようとしています。 「index.js」にそして「?」を返すようにしたいのです。データベースのプレフィックスは「?」なので

これは「prefix.js」のコードです。

const GuildConfig = require("../database/schemas/GuildConfig");
const { Client } = require("discord.js");
const client = new Client();

const prefix = () => {
  if (message.author.bot) return;
  const guildConfig = GuildConfig.findOne({
    guildId: message.guild.id,
  });
  const prefix = guildConfig.get("prefix");Z
  return prefix
};

exports.prefix = prefix

これは「index.js」のコードの一部です。

const prefix = require("./src/events/prefix")

console.log(prefix)

これがコンソールに表示される内容です

{ 接頭辞: [関数: 接頭辞] }

2

プレフィックス エクスポートがデフォルトのエクスポートではないため、オブジェクト dest を通じてアクセスする必要があります。構造化するか、prefix.prefix によって。あるいは、代わりに module.exports を使用する必要があります。詳細については、この StackOverflow の質問を参照してください。

– エドリック

2020 年 9 月 3 日 19:46



------------------------

関数を事前に宣言するときにプレフィックスをエクスポートに結び付けたり、中かっこ {} を使用して後でエクスポートしたりできます。

エクスポート関数 prefix() {}

または

プレフィックス = () => {}

{プレフィックス} をエクスポート

エクスポート/インポートについて少し詳しく説明した記事は次のとおりです。 https://javascript.info/import-export

1

OP は ES6 モジュールではなく、Node.JS モジュール システムを使用しています。

– テイクサムバイト

2020 年 9 月 3 日 23:41



------------------------

答え

次のようにプレフィックス関数を呼び出す必要があります。

オプション 1 (オブジェクトを分解する)
const { prefix } = require("./src/events/prefix")
console.log(prefix())
オプション 2 (関数を呼び出すことによる)
const prefix = require("./src/events/prefix")
console.log(prefix.prefix())
参照

NodeJS エクスポート

総合生活情報サイト - OKWAVES
総合生活情報サイト - OKWAVES
生活総合情報サイトokwaves(オールアバウト)。その道のプロ(専門家)が、日常生活をより豊かに快適にするノウハウから業界の最新動向、読み物コラムまで、多彩なコンテンツを発信。