【发布时间】:2017-01-18 13:32:21
【问题描述】:
我正在为仅使用 webview 的 android 和 iphone/ipad 创建一个非常简单的应用程序。 我如何存储用户名和密码,这样用户就不必每次都输入它们。提前致谢。
import React, { Component } from 'react';
import {
AppRegistry,
WebView
} from 'react-native';
export default class myapp extends Component {
render() {
return (
<WebView
source={{uri: 'https://mysecretappurl.com'}}
/>
);
}
}
AppRegistry.registerComponent('myapp', () => myapp);
感谢 Fabian 的快速回复。 我用注入的Javascript解决了它,即使我在android和ios上关闭并重新启动应用程序,数据仍然存在。我一开始尝试使用 asyncstorage 和 reactnativ-webview-bridge 时遇到了困难,但由于缺乏知识,我未能实现它们。
import React, { Component } from 'react';
import {
AppRegistry,
WebView
} from 'react-native';
export default class myapp extends Component {
render() {
let jsCode = `
var cookie={};
document.cookie.split('; ').forEach(function(i){cookie[i.split('=')[0]]=i.split('=')[1]});
document.querySelector('#email').value=cookie['email'] || '';
document.querySelector('#password').value=cookie['password'] || '';
document.querySelector('#login button').onclick = function(){
document.cookie = 'email='+document.querySelector('#email').value;
document.cookie = 'password='+document.querySelector('#password').value;
};
`;
return (
<WebView
source={{uri: 'https://mysecretappurl.com'}}
injectedJavaScript={jsCode}
/>
);
}
}
AppRegistry.registerComponent('myapp', () => myapp);
【问题讨论】:
标签: android ios reactjs webview native