2014-05-19 7 views
0

다음 코드를 표시하는 텍스트를 정지 작동 잘 ... 간단하게 정렬되지 않은 목록에 일부 JSON을 표시 :가져 오기 mongo_dart 패키지

그러나
import 'dart:html'; 
import 'dart:convert'; 

main() { 
// Db db = new Db("mongodb://127.0.0.1/mongo_dart-showjson"); 
    querySelector("#sample_text_id") 
     ..onClick.listen(showJSON); 
} 

void reverseText(MouseEvent event) { 
    var text = querySelector("#sample_text_id").text; 
    var buffer = new StringBuffer(); 
    for (int i = text.length - 1; i >= 0; i--) { 
    buffer.write(text[i]); 
    } 
    querySelector("#sample_text_id").text = buffer.toString(); 
} 

void showJSON(MouseEvent event) { 
    var path = 'hcps.json'; 
    var hcpDisplay = querySelector('#json_length_id'); 
    HttpRequest.getString(path).then((String fileContents) { 
    List<String> hcpList = JSON.decode(fileContents); 
    for (int i = 0; i < hcpList.length; i++) { 
     hcpDisplay.children.add(new LIElement()..text = hcpList[i].toString()); 
    } 

    }); 
} 

, 나는 몽고-다트에 대한 import 문을 추가 할 때,

import 'dart:html'; 
import 'dart:convert'; 
import 'package:mongo_dart/mongo_dart.dart'; 

main() { 
    Db db = new Db("mongodb://127.0.0.1/mongo_dart-showjson"); 
    querySelector("#sample_text_id") 
     ..onClick.listen(showJSON); 
} 
... 

mongo_dart 패키지 종속성으로 pubspec.yaml 추가되었습니다 : 나는 오류가 발생하지 않습니다 불구하고 JSON은 표시되지 않습니다.

mongo_dart 패키지를 가져 오면 json 텍스트가 표시되지 않는 이유는 무엇입니까? 아무런 오류가 없습니까? 미리 감사드립니다.

+0

브라우저에서 mongo_dart를 사용하려고합니까? 서버 측 라이브러리이므로 클라이언트 측에서 작동하지 않습니다. –

+0

Vadim - 내가 붙여 넣은 코드는 html 파일이 아닌 .dart 파일에서 가져온 것입니다. – JesusReagan

답변

2

을 시도 할 수 있습니다. 클라이언트 쪽에서는 작동하지 않습니다. 그 주된 이유 - 브라우저에는 mongodb, mysql, postgress 등과 같은 데이터베이스에 연결할 수있는 실제 소켓이 없습니다. CouchDB와 같은 RESTful API로 일부 데이터베이스를 볼 수있다. 또는 일부 미들웨어를 사용해야합니다 (예 : objectory).

+0

'import 'dart : html';'이 라이브러리가'dart : io에 의존한다는 오류 메시지를받지 못했습니까? '브라우저에서 실행할 수 없습니까? –

+0

안녕하세요, Gunter. 나에게 또는 예수님에게 질문인가? 레이건? AFAIK'dart : html'을 가져 오지 않았습니다. –

+0

죄송합니다. 내 자신의 질문에 대답했다고 생각했지만, 다른 사람에게 물어볼만큼주의를 기울이지 않았습니다. –

0

당신은 또한

try { 
    mdb.Db db = new mdb.Db("mongodb://127.0.0.1/mongo_dart-showjson"); 
} catch(e) { 
    print(e) 
} 

가끔 예외가 때문에 삼킨 try/catch 블록을 추가 할 수 있습니다 충돌

이 있는지

import 'package:mongo_dart/mongo_dart.dart' as mdb; 

main() { 
    mdb.Db db = new mdb.Db("mongodb://127.0.0.1/mongo_dart-showjson"); 

을 시도 할 수 영역의 사용 (비록 여기에 도움이되지 않을 수도 있습니다)하지만 나는 그것이 가치가 있다고 생각합니다.

패키지 캐시 디렉토리가 손상되었을 수 있습니다. 패키지 추가 정보

mongo-dart is a server-side driver library for MongoDb implemented in pure Dart

에 명시된 바와 같이 당신은

pub cache repair 
+0

안녕하세요 건터 - 답변 해 주셔서 감사합니다. 처음 두 제안 중 어느 것도 나에게 효과가 없었다. pub 캐시 복구를 시도하면 "pub cache"에 대한 "repair"하위 명령이 없다는 메시지가 나타납니다. "pub cache -h"를 입력하면 사용할 수있는 유일한 하위 명령이 '추가'라고되어 있습니다. – JesusReagan

+0

저는 개발 채널에 있습니다. 이 명령은 최근에 추가되었습니다. 귀하의 버전에는 아직없는 것으로 보입니다. pub-cache 디렉토리를 비울 수 있습니다. 리눅스에서'~/.pub-cache' (다른 OS에서는 모른다) –