如何在 nativescript 应用程序中呈现 html 网站?

How can i render html website in nativescript application?

如何将 html and/or 非本地网站渲染到 nativescript 应用程序中?我找不到启动或操作浏览器实例的方法。

documentation 会对你有很大帮助,但这里有两个例子:

示例url

此示例将创建一个带有 WebView 的新页面,然后导航到该页面。 Url 可能是本地的(html 文件在 phone 上)或远程的(http://..。)

var frameModule = require('ui/frame');
var pageModule = require('ui/page');
var webViewModule = require("ui/web-view");

var factoryFunc = function () {
    var webView = new webViewModule.WebView();
    webView.url = 'http://www.example.com';
    var page = new pageModule.Page();
    page.content = webView;
    return page;
};

frameModule.topmost().navigate(factoryFunc);

将本地数据加载到 WebView 的示例

一个示例,其中包含一个视图 (.xml) 及其对应的 .js 文件,以及您向其提供包含要显示的 html 的字符串的位置。

其中 .xml 是:

<Page xmlns="http://www.nativescript.org/tns.xsd" loaded="loaded">
    <WebView id="myWebView" />
</Page>

.js:

exports.loaded = function(args) {
    var page = args.object;
    var webView = page.getViewById('myWebView');
    var application = require('application');
    var html = '<html><body><h1>I can haz webview?</h1></body><html>';

    if (application.ios) {
        webView.ios.loadHTMLStringBaseURL(html, null);
    } else if (application.android) {
        webview.android.loadData(html, 'text/html', null);
    }
};

在即将发布的版本中,您将能够像这样指定 HTML:

<Page>
    <WebView src="<html><body><h1>I can haz webview?</h1></body><html>" />
</Page>

Src 属性 也适用于 URL 和本地文件路径。