The best way I can think of is by calling a Nanoflow from your Navigation
Step 1: Configure a URL for the desired page
Step 2: In a Nanoflow construct the URL in a String
Step 3: Create a Javascript Action with a String Parameter ‘Url’ and the following code ( which is a modication from the OpenURL action in Nanoflow commons and only works for web browsers):
// This file was generated by Mendix Studio Pro.
//
// WARNING: Only the following code will be retained when actions are regenerated:
// - the import list
// - the code between BEGIN USER CODE and END USER CODE
// - the code between BEGIN EXTRA CODE and END EXTRA CODE
// Other code you write will be lost the next time you deploy the project.
import { Big } from "big.js";
// BEGIN EXTRA CODE
// END EXTRA CODE
/**
* Opens the provided URL in the web browser in a new tab.
* @param {string} url - This field is required.
* @returns {Promise.<boolean>}
*/
export async function OpenURLInNewTab(url) {
// BEGIN USER CODE
if (!url) {
return Promise.reject(new Error("Input parameter 'Url' is required"));
}
// Native platform
if (navigator && navigator.product === "ReactNative") {
const Linking = require("react-native").Linking;
return Linking.canOpenURL(url).then(supported => {
if (!supported) {
return false;
}
return Linking.openURL(url).then(() => true);
});
}
// Hybrid platform
if (window && window.cordova) {
window.open(url, "_system");
return Promise.resolve(true);
}
// Web platform
if (window) {
window.open(url,'_blank');
return Promise.resolve(true);
}
return Promise.resolve(false);
// END USER CODE
}