You need to use segues to perform this action.
First make the segues connections between the ViewControllers using to storyboard editor. After that you need to give the segues an identifier on the storyboard's attributes inspector. Then in your code you can call the new ViewController by the segue like the code below.
With this code you can pass the data using the button:
class ViewController: NSViewController {
    var dataToPass: String = "DataToPass"
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    @IBAction func loginButton(_ sender: Any) {
        performSegue(withIdentifier: NSStoryboardSegue.Identifier(rawValue: "segueIdentifier"), sender: self)
    }
    override func prepare(for segue: NSStoryboardSegue, sender: Any?) {
        if segue.identifier!.rawValue == "segueIdentifier" {
            let destinationViewController = segue.destinationController as! ViewController2
            destinationViewController.dataToReceive = dataToPass
        }
    }
}
class ViewController2: NSViewController {
    var dataToReceive: String
    override func viewDidLoad() {
        super.viewDidLoad()
    }
}
And with this code you will use the override viewWillAppear
class ViewController: NSViewController {
    var dataToPass: String = "DataToPass"
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    override func viewWillAppear() {
        performSegue(withIdentifier: NSStoryboardSegue.Identifier(rawValue: "segueIdentifier"), sender: self)
    }
    override func prepare(for segue: NSStoryboardSegue, sender: Any?) {
        if segue.identifier!.rawValue == "segueIdentifier" {
            let destinationViewController = segue.destinationController as! ViewController2
            destinationViewController.dataToReceive = dataToPass
        }
    }
}
class ViewController2: NSViewController {
    var dataToReceive: String
    override func viewDidLoad() {
        super.viewDidLoad()
    }
}
In both cases you need to assure the data you want to pass to the other view controller is not null.