drag gameobject in unity 2d code example

Example 1: 2d item dragging unity

public class followMouse : MonoBehaviour
{

    bool canDrag = false;

    Vector3 itemPos;
    void Update()
    {
        transform.position = Input.mousePosition;
        if (!Input.GetMouseButton(0))
        {
            canDrag = false;
        }

    }
    
    void OnTriggerStay2D(Collider2D other)
    {
        if (other.CompareTag("itemIcon"))
        {
            if (Input.GetMouseButton(0))
            {
                canDrag = true;
                other.transform.position = Input.mousePosition;
            }
            
        }
    }



}

Example 2: drag object unity 2d

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class DragAndDrop : MonoBehaviour
{

    private bool isDragging;

    public void OnMouseDown()
    {
        isDragging = true;
    }

    public void OnMouseUp()
    {
        isDragging = false;
    }

    void Update()
    {
        if (isDragging) {
            Vector2 mousePosition = Camera.main.ScreenToWorldPoint(Input.mousePosition) - transform.position;
            transform.Translate(mousePosition);
        }
    }
}