我使用JWT来管理登录状态,因此我需要在运行package com.example.sudiproy.tabproject;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TabHost;
public class MainActivity extends AppCompatActivity {
TabHost tabHost;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TabHost host = (TabHost) findViewById(R.id.tabHost);
host.setup();
//Tab 1
TabHost.TabSpec spec = host.newTabSpec("Tab One");
spec.setContent(R.id.tab1);
spec.setIndicator("Android");
host.addTab(spec);
//Tab 2
spec = host.newTabSpec("Tab Two");
spec.setContent(R.id.tab2);
spec.setIndicator("Iphone");
host.addTab(spec);
//Tab 3
spec = host.newTabSpec("Tab Three");
spec.setContent(R.id.tab3);
spec.setIndicator("Window");
host.addTab(spec);
}
}
之前清除localstorage。这怎么可能?
类似的东西:
casper.start
答案 0 :(得分:1)
您可以在没有任何参数的情况下调用casper.start
来初始化内部数据,然后执行您的工作:
casper.start()
.then(function() {
casper.evaluate(function() {
localStorage.clear()
})
})
.thenOpen('http://localhost:3000', function() {
test.assertUrlMatch('http://localhost:3000')
})
问题在于,如果您在没有任何网址的情况下致电casper.start
,那么当您尝试清除localStorage
时,该网页将会显示为:空白。基本上有两种解决方案:
fs
模块删除temporary files directory for PhantomJS中的localStorage数据库。打开目标页面,清除localStorage,然后再次打开目标页面。
var url = "...";
casper.start(url, function() {
this.evaluate(function() {
localStorage.clear()
})
})
.thenOpen(url, function() {
test.assertUrlMatch('http://localhost:3000')
})