【发布时间】:2018-11-28 10:03:08
【问题描述】:
我在 xaml 中使用 WebView 创建了 ContenPage(代码如下)。我在构造函数中传递webpageURL。我的目标是在开始加载传递的 URL 之前使用 javascirpt 将项目添加到 webview localstorage。我尝试了几种方法,例如
Browser.EvaluateJavaScriptAsync(javascirpt); 或者 Browser.Evaluate(javascirpt);
在构造函数中执行之前
Browser.Source = URL;
或者把这个方法封装在里面
Device.BeginInvokeOnMainThread(async () =>{});
但它们仍然没有按预期工作。你知道我的问题有什么解决办法吗?
public partial class WebView : ContentPage
{
public WebView(string URL)
{
string item = "test";
string javascirpt = String.Format("localStorage.setItem('ls.item', '{0}')", item);
Browser.Eval(javascirpt);
Browser.Source = URL;
}
}
Xaml:
<WebView x:Name="Browser" Grid.Column="0" Grid.Row="0" Grid.RowSpan="2"
HeightRequest="1000"
WidthRequest="1000"
Navigating="WebOnNavigating"
Navigated="WebOnEndNavigating" />
【问题讨论】:
标签: webview xamarin.forms local-storage