本地存储未定义

2023-11-30

我正在尝试在 javascript 中使用 localstorage 在执行之间保存数据。这是使用它的代码

const commando = require('discord.js-commando');
roasts = localStorage.getItem("roasts").split(/\r?\n/);

class RoastMe  extends commando.Command {
    constructor(client){
        super(client, {
            name:'addroast',
            group:'insult',
            memberName:'addroast',
            description:'Add a roast to the !roastme archive'
        });
    }

    async run(message, args){
        if(args.length==0) message.reply("That aint a roast.");
        else{
            roasts.push();
            roasts[roasts.length-1] = args;
            var save = "";
            for(var i = 0; i < roasts.length; i++){
                save += roasts[i] + "\n";
            }

            localStorage.setItem("roasts", save);
        }
    }
}
module.exports = RoastMe;

这是我尝试运行它时产生的错误

ReferenceError: localStorage is not defined
at Object.<anonymous>

//location of error
(/home/ubuntu/workspace/commands/insult/addinsult.js:2:1)

at Module._compile (module.js:569:30)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:503:32)
at tryModuleLoad (module.js:466:12)
at Function.Module._load (module.js:458:3)
at Module.require (module.js:513:17)
at require (internal/module.js:11:18)
at /home/ubuntu/workspace/node_modules/require-all/index.js:52:46
at Array.forEach (native)

如果有更好的方法在执行之间存储数据,请告诉我。否则,你能解释一下为什么这不起作用吗? 谢谢。

编辑:发布的代码来自 addinsult.js


您在哪里定义本地存储?如果它是一个模块,您需要“需要”它。

这条线roasts = localStorage.getItem("roasts").split(/\r?\n/);

正在尝试使用名为“localStorage”的东西来做一些事情,该东西从未被定义过。

如果我没记错的话,您似乎正在尝试使用此模块:https://www.npmjs.com/package/node-localstorage我在该页面上找到了有关如何使用它的说明。

if (typeof localStorage === "undefined" || localStorage === null) {
   var LocalStorage = require('node-localstorage').LocalStorage;
   localStorage = new LocalStorage('./scratch');
}

localStorage.setItem('myFirstKey', 'myFirstValue');
console.log(localStorage.getItem('myFirstKey'));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

本地存储未定义 的相关文章

  • 使用innerHTML构建动态表格

    我正在尝试使用innerHTML 在javascript 中构建动态表 当Web应用程序运行时 它只打印console log 但不构建表 我尝试了两种方法 First success function data status jqXHR
  • 解析 Immutable.js 中的嵌套记录

    假设我使用 Immutable js 定义了以下记录 var Address Immutable Record street city zip var User Immutable Record name address new Addre
  • 从多个“输入:文件”中删除 FileList 项

    我有这个 DOM var id 0 input file upload 0 files id 这是第 0 个索引上的第一个文件 列出了文件属性并且一切正常 但是 我们如何从 DOM 中删除项目 object FileList 使用 Java
  • JavaScript 无法解析 Java 中使用 Gson 序列化的字符串[重复]

    这个问题在这里已经有答案了 这不是重复的这个问题 https stackoverflow com q 15637429 274677因为这里的问题具体是关于在 JavaScript 中以文字形式从 Java 序列化的 JSON 字符串的表示
  • 如何在javascript中访问文件? [复制]

    这个问题在这里已经有答案了 是否可以在 JavaScript 中访问扩展名为 txt 或 file 的文件 我想在我的函数中调用这个文件 如果您谈论的是在 Web 浏览器中运行的 javascript 那么答案是否定的 您无法访问客户端计算
  • 在 JavaScript 中按名字(按字母顺序)对数组进行排序[重复]

    这个问题在这里已经有答案了 我有一个数组 请参阅下面的数组中的一个对象 我需要使用 JavaScript 按名字排序 我该怎么做 var user bio null email email protected cdn cgi l email
  • 循环结束后从头开始重新迭代 for 循环 - JS

    我有一个数组和一个对象数组 我基本上需要将数组的第一个元素映射到数组内对象的第一个元素 依此类推 两个数组的长度都可以是可变的 并且一旦循环结束 循环应该从头开始 但是 我不确定是否再次开始循环 这是我的代码 const colors 7c
  • JavaScript 设置滚动高度

    在 JavaScript 中 将一个元素的滚动高度设置为另一个元素的滚动高度的正确方法是什么 直接赋值没有效果 谢谢 格雷格 直接是不可能的 scrollHeight 是一个只读属性 包含元素内容的总高度 以像素为单位 如果有元素 A 并且
  • 使用 ES6 从子级获取父类名?

    我想获取父类名称 Parent 但我只能使用此代码检索子类名称 Child use strict class Parent class Child extends Parent var instance new Child console
  • 如何在 asp:TextBox 的 keyup 事件上调用 javascript 函数

    如何在asp net的TextBox控件的keyup事件上调用javascript函数 我正在尝试类似的事情 但它不起作用
  • selenium webdriver 管理器更新 - npm

    我尝试使用 webdriver manager 更新 selenium webdriver 但出现错误 Error Got error Error read ECONNRESET from https selenium release st
  • JS - 文件读取器 API 获取图像文件大小和尺寸

    您好 我正在使用以下代码来使用文件读取器 API 获取上传图像
  • JS 导入模块并在页面加载时运行

    我想使用 html onload 事件和从另一个 generateObject js 文件导入的 console log 文本来调用我的函数 main 但是当我导入函数时 onload 事件停止工作并且函数 main 不再使用 html 生
  • 在函数字符串上使用 eval

    我在做 eval function console log Hello World 但这给出了错误 Uncaught SyntaxError Unexpected token 为什么这是错误的 The eval操作员期望Program作为输
  • 恢复console.log()

    由于某种原因 附带的原型框架 或其他 JavaScript 代码 Magento http en wikipedia org wiki Magento正在替换标准控制台功能 所以我无法调试任何内容 在 JavaScript 控制台中写下co
  • 没有jquery的动画,左右滑动

    我试图在显示 div 时将其向左滑动 在隐藏它时将其向右滑动 但我不想使用 jQuery 有没有一种方法可以在不使用javascript库的情况下制作简单的动画并支持IE7和IE8 这是我的显示 隐藏js function showHide
  • 根据 Google Apps 脚本中的另一个数组过滤数组

    我对 JavaScript 相当陌生 可能需要一些帮助来解决我在处理 Google Apps 脚本时遇到的问题 我打算做的是根据数组过滤数据 该数组是从特定工作表中的特定单元格中获取的 其中包含我不想保留在数据中的字符串元素 换句话说 包含
  • 为什么我不能分配 const 但我可以控制台记录它?

    我做了一些java脚本练习 让几个链接按字母顺序排列 这是 HTML a href a is good a a href c is good a a href b is good a JavaScript const allhref doc
  • 流星与承诺

    我一直在尝试养成使用 Promise 的习惯 但在尝试在 Meteor 上下文中的服务器端代码中使用它们时遇到了问题 这就是问题 if Meteor isServer Meteor startup function code to run
  • 如何在二维数组中找到字符串?

    我有一个看起来像这样的数组 var array a b c d e f 我希望能够在数组中搜索字符串 d 并返回对应的值 c try function find str array for var i in array if array i

随机推荐

  • 如何使用 *ngFor 显示 json 对象并访问对象的键、值

    我想显示下面的内容data从服务器中ionic 2 和访问key and value对象使用 ngFor 我想显示这个object动态使用 ngFor 如何得到它 有没有更简单的解决方案problem因为我觉得对于开发人员来说使用它确实很常
  • 正则表达式从文本中每个单词的末尾删除点

    我尝试仅从给定文本中每个单词的末尾删除点 在爪哇中 例如 input java html net node js php output java html net node js php thanks 根据您对单词的定义 您可以替换 w S
  • 如何在kivy python中使用滚动条

    谁能告诉我如何在这段代码中使用滚动条 其次 是否有任何方法可以对齐标签和 TextInput 以便无论有多少输入 TextInput 内的文本都将清晰可见 这里的对齐意味着 如果有数百个 数百或数千 个 TextInput 则 TextIn
  • 使用 OperationContextScope 设置标头时,IClientMessageInspector BeforeSendRequest 方法不起作用

    I have a client code implementation to consume a service with IEndpointBehavior to track request and response data 一切工作正
  • C#中如何获取数据类型的范围?

    如何获取 c Sharp net 中的数据类型范围 例如 如果我想获取 uint 数据类型的范围 如何通过代码获取它 请参阅此示例参考 gt UInt64 MinValue 字段 表示 UInt64 的最小可能值 该字段是恒定的 MSDN
  • 捆绑安装期间 Heroku 部署失败

    当将我的应用程序 Rails3 推送到 Heroku 时 它被拒绝 运行 bundle install withoutdevelopment test pathvendor bundle binstubsvendor bundle bin
  • 如何从提交表单自定义数据全日历包

    我在 FullCalendar 上方添加了一个选择表单来选择用户并显示他的事件 问题是如何加载日历中选择的用户的事件 这是一些代码 在 Calendar html twig 中 block javascripts parent
  • 如何使用 .c 文件而不是 .cpp 文件在 google test 中编写测试类?

    我已将 googletest 用于包含 c 文件的 Android NDK 项目 我使用了 cpp 类型的测试类来执行相同的操作 我想改用 c 文件 当我尝试使用它时出现以下错误 Running main from gtest main c
  • UIGraphicsBeginImageContext 与 CGBitmapContextCreate

    我正在尝试更改背景线程中图像的颜色 苹果文档说 UIGraphicsBeginImageContext 只能从主线程调用 我正在尝试使用 CGBitmapContextCreate 上下文 CGBitmapContextCreate 位图数
  • 如何在Ubuntu上安装OpenAL SDK?

    我对 Linux 和 Linux 编程非常陌生 我正在尝试在 ubuntu 上安装 OpenAL SDK 我最好的猜测是我需要从 CVS 存储库下载 OpenAL 我找到了一个教程 http www edenwaith com produc
  • 在 FormCreate() 中我可以做什么,不可以做什么?

    我认为这一定是一个常见问题解答 但谷歌搜索并没有真正帮助 我可以做什么 和不可以做什么 FormCreate 我想知道表单的所有子控件是否都已完全创建并可供访问等 我问的原因是我偶然发现了一个旧项目 我的FormCreate 简单地包括 S
  • 使用 sed 仅更改连续重复的字母

    使用 sed 如何将字母 a 更改为 A 但前提是它重复出现为两个或多个连续字母 示例 来自 galaxy ear aardvak Haaaaaaaaa into galaxy ear AArdvak HAAAAAAAAA 您可以使用组来完
  • 计算 Pandas GroupBy 对象中日期的差异

    我有一个具有以下格式的 Pandas DataFrame In 0 df Out 0 col1 col2 date 0 1 1 2015 01 01 1 1 2 2015 01 09 2 1 3 2015 01 10 3 2 1 2015
  • 脚本和matlab命令窗口之间的区别

    我想知道在命令窗口中输入几行或让脚本执行它们之间有什么区别 在问题中逃离嵌套的 try catch 语句我有一个示例功能 我已将选定的代码放入脚本中 然后叫它 但是这样它就无法正常工作 另一方面 当我选择行并按 f9 它按预期工作 这些行是
  • 如何在ParaView中读取Ansys数据文件?

    有人知道如何将 Ansys 结构数据文件导出到 ParaView 吗 据了解ParaView有一个Ansys阅读器 但它不起作用 加载 inp 文件时总是会出现错误 是否有任何脚本可以将 inp 文件转换为 vtk Thanks 基于vid
  • 对范围对象使用 Range.Sort 时 Excel for Mac 崩溃

    我有一个 Excel 电子表格 单元格 A1 到 A8 中有 8 个随机数 然后我有两个按钮 每个按钮运行一个 VBA 子程序 Sub Button1 Click Sheets Sheet1 Range A1 A8 Sort key1 Sh
  • SQL日期查询中的VBA变量

    我正在尝试查询 SQL 数据库中日期在用户输入给出的日期之后的所有行 当我用 包围日期时 我遇到了各种错误 从 附近语法不正确 到 将表达式转换为算术溢出错误 我当前的代码如下所示 inputdate InputBox Please ent
  • 增加谷歌云虚拟机的配额

    最近 我试图通过向我的虚拟机添加 GPU 来获得 Google 云加速器的好处 因此请求增加配额 因此我发送了 8 个 GPU 的请求 并收到了以下电子邮件 注意我尝试了多次 那么任何人都可以解释到底发生了什么以及如何成功增加 提前致谢 此
  • 在服务器上所有数据库的所有表中搜索字符串

    编辑 这个问题被标记为重复 但事实并非如此 SO 上的其他答案显示了如何搜索单个数据库中的所有表 我需要搜索给定服务器上每个数据库中的所有表 我需要在服务器上的所有数据库的所有表中搜索搜索字符串 我的电子邮件地址散布在即将更改域名的表格中
  • 本地存储未定义

    我正在尝试在 javascript 中使用 localstorage 在执行之间保存数据 这是使用它的代码 const commando require discord js commando roasts localStorage get