가 나는 자바 스크립트, 과 시작에 모든 것을 시작하기 때문에, 그래서 난,HTML5 파일 시스템 초기화
내 첫 시도는 성공, 클라이언트 측에 데이터를 저장할 수 HTML5 파일 시스템을 사용하여 간단한 프로젝트를 시도하고 onclick 또는 onkeypress 이벤트에서 파일을 조작하고 (파일을 읽고이를 텍스트 영역 또는 P에 추가하고 파일을 쓰거나 수정합니다)
그러나 동시에 이벤트 외부에서 수행 할 때 파일 시스템이 null/undefined이고 프로세스를 계속할 수 없습니다.
여기에서 잘 작동 코드이다
function initFS() {
window.webkitStorageInfo.requestQuota(PERSISTENT,5*1024*1024,
function(grantedBytes) {
window.requestFileSystem(window.TEMPORARY, grantedBytes, function (filesystem)
{
fs = filesystem;
}, errorHandler);
});
}
document.body.onclick=function()
{
alert(fs);
fs.root.getFile('log.txt', {create: true, exclusive: true}, function(fileEntry) {
}, errorHandler);
}
경보 (FS)는 DOM 파일 시스템의 결과는 그 FS는 변수가 파일 시스템을 의미한다.
하지만이 수행 할 때
function initFS()
{
window.webkitStorageInfo.requestQuota(PERSISTENT,5*1024*1024,function(grantedBytes){
window.requestFileSystem(window.TEMPORARY, grantedBytes, function(filesystem) {
fs = filesystem;
}, errorHandler);
})
}
if (window.requestFileSystem) {
initFS();
}
alert(fs);
경고 (FS)이 null을 반환 이에 할 수있는 솔루션이 있습니까? , 내 최후의 수단은 확실히 파일 시스템이 될 FS를 클릭 한 후 수 있도록 버튼을 추가 할만한 설명은 이것에 대한 유용한 것,하지만 난
그리고 FS가 null의 이유 메이크업 감각, 기적이 작업을 수행하는 방법은 무엇입니까? 왜냐하면 콜백 내에 모든 코드를 넣으려는 것이 실제로하고 싶은 일이 아니기 때문입니다. –
나는 동기식 함수를 모른다. 당신은'약속들'을 볼 수 있습니다 - 당신은 외부 도서관을 가져야 할 것입니다. 또는 fs == null과 같은 추악한 것을 할 수 있습니다. 그런 다음 10ms'(의사 코드)로 다시 시도하십시오. – paulslater19
또는 실행 된 것을 알기 전까지는 코드를 시작하지 않는 것 (예 : 1 초 대기 중) – paulslater19