e.preventDefault()阻止默认行为

通常情况下,当你希望阻止某个事件的默认行为时,可以使用e.preventDefault()。以下是一些常见的应用场景:

  1. 表单提交:在处理表单提交事件时,通过调用e.preventDefault()可以阻止表单的默认提交行为,这样你就可以在提交之前执行其他操作或验证表单数据。

  2. 链接点击:通过在链接的点击事件处理程序中调用e.preventDefault(),可以阻止链接的默认跳转行为,从而允许你在点击链接时执行自定义操作,比如打开一个模态框或执行一些其他逻辑。

  3. 按钮点击:在处理按钮点击事件时,有时你可能希望阻止按钮的默认提交行为或页面刷新行为。通过调用e.preventDefault()可以阻止这些默认行为。

  4. 键盘事件:在处理键盘事件时,你可能希望阻止某些按键的默认行为。例如,你可以在按下回车键时阻止表单的默认提交行为,或者在按下空格键时阻止滚动页面的默认行为。

总的来说,当你需要在事件发生时执行自定义逻辑并阻止默认行为时,可以使用e.preventDefault()

import { PureComponent } from 'react';
import { connect } from "react-redux"
import * as action from "../../actions/newarticle"
import Error from "../../components/Error"
import { updateArticle } from '../../actions/article';


class ArticleEdit extends PureComponent {

    changeTitle =(e)=>{
        this.props.onChangeTitle("title",e.target.value)
    }
    changeDescription =(e)=>{
        this.props.onChangeDescription("description",e.target.value)
    }
    changeBody =(e)=>{
        this.props.onChangeBody("body",e.target.value)
    }
    changeTag =(e)=>{
        this.props.onChangeTag("tag",e.target.value)
    }
    watchEnter =(e)=>{
        if(e.keyCode === 13){
            e.preventDefault()
            this.props.addTag()
        }
    }
    removeTag =(tag) =>{
        return (ev) =>{
            this.props.removeTag(tag)
        }
    }
    onSubmit = (article) => {
        return()=>{
            this.props.updateArticle(article)
        }
    }
    render() {
        const {slug,title,description,body,tag,tags,errors } = this.props
        return (

            

编辑文章