小编ecr*_*345的帖子

基本Java应用程序数据存储

我(基本上)正在研究用Java编写的日历应用程序,我需要一种方法来存储日历事件.这是我编写的第一个"真正的"应用程序,而不是简单的项目(通常用于类),它们不在程序会话之间存储信息,或者将它作为text或.dat文件存储在与程序相同的目录中,所以我有几个非常有关数据存储的基本问题.

  • 如何存储事件对象和其他数据?(.dat文件,某种类型的数据库等)
  • 它们应该存放在哪里?
  • 我猜测在程序启动时将所有对象加载到内存中是不好的,并且在程序关闭之前不要在硬盘驱动器上更新它们.那我该怎么做呢?

如果有一些教程(或多个教程)涵盖了我的问题的答案,那些链接将是完全可以接受的答案.

(我知道已经提出了一些类似的问题,但我找不到任何一个完整的初学者观点.)

编辑:就像我在其中一条评论中所说的那样,总的来说,我有兴趣用它作为一个学习如何以"正确"(合理可扩展,合理标准)的方式做事的机会,即使有更简单的方法在这种基本情况下可以使用的解决方案.

java

6
推荐指数
1
解决办法
1万
查看次数

JavaScript事件监听器是否自动清理?

从DOM中删除元素后,它的事件侦听器是否会自动取消注册并清除其引用的资源(闭包)?如果是,如果某些非事件侦听器代码包含对该元素的引用,答案是否会更改?

我特别关注的是"伪导航",其中unload事件被触发并且大部分文档被替换(当然,许多替换元素也会注册事件监听器),但在发生另一个整页加载之前可能会有几个伪导航.所以我想知道是否有必要跟踪所有添加的事件侦听器并在unload触发时手动删除它们以避免泄漏它们引用的任何资源.

(注意:在我的情况下,"使用jQuery/[其他js库]来处理它"并不是一个有效的解决方案.我对与IE8 +的兼容性以及其他浏览器的合理新版本感兴趣.)

javascript javascript-events onunload

6
推荐指数
1
解决办法
1790
查看次数

反应JS。将元素附加到 DOM

我是新来的,过去几天我一直在玩它。我正在尝试向 DOM 附加一个值,我找到了一种方法,但我正在寻找一种方法

var para = document.createElement("li");
var t = document.createTextNode(value);
para.appendChild(t);
document.getElementById("root").appendChild(para); 
Run Code Online (Sandbox Code Playgroud)

但是,我正在寻找不同的方式。我尝试了几种不同的方法,但我被卡住了。除了上面的这个方法还有别的方法吗^^^^

import React, { Component } from 'react';
import { render } from 'react-dom';


export class Parent extends React.Component {
  constructor(props) {
    this.greet = this.greet.bind(this);
    this.state = { text: " " };
  }

  greet(value) {
    //console.log(value);

    var para = document.createElement("li");
    var t = document.createTextNode(value);
    para.appendChild(t);
    document.getElementById("root").appendChild(para); 

  }

  render() {
    return (
      <div>
        <Child onGreet={this.greet} />
      </div>
    )
  }
};


export class Child extends React.Component {

  constructor(props) { …
Run Code Online (Sandbox Code Playgroud)

javascript dom createelement reactjs

4
推荐指数
1
解决办法
2万
查看次数

打字稿 3.33 的 onClick 问题并做出反应

我正在尝试在带有 TypeScript 和 React 的链接上使用 onClick 属性:

import * as React from 'react';
import { any } from 'prop-types';

function handleClick(this:any,name:React.ReactNode) {
  console.log('The link was clicked.');
  this.props.callbackFromParentSearch(name);
}

export const Suggestions = (props:any) => {
  const options = props.results.map((r: { id: React.Key; name: React.ReactNode; }) => (
    <a href="#" onClick={handleClick(r.name)}>
    <li key={r.id}>

      {r.name}

    </li>
    </a>
  ))
  return <ul>{options}</ul>
}

export default Suggestions
Run Code Online (Sandbox Code Playgroud)

但这给出了一个错误:

类型 'void' 不可分配给类型 '(event: MouseEvent) => void'.ts(2322) index.d.ts(1315, 9):预期的类型来自属性 'onClick',它在类型上声明'DetailedHTMLProps, HTMLAnchorElement>'

那么如何在 TypeScript & React 中正确使用 onClick …

typescript

3
推荐指数
1
解决办法
5505
查看次数