2014-01-21 3 views
0

직원 교육을위한 임의의 테스트를 생성하는 데 사용할 수있는 Google Apps 스크립트를 만들고 있습니다. 저는 이미 Google 시트에서 질문 목록을 얻고, 무작위로 추출하고, 처음 10 개 질문을 잡으려고 작성된 기본 스크립트를 가지고 있습니다. 모두 잘 작동합니다. 나는 별개의 스크립트 대신에 UiApp을 사용하여 모든 것을 다시하는 것이 더 좋을 것이라고 결정했다. 문제가 발생하는 곳입니다. 테스트 할 간단한 UiApp 뼈대를 만들고 게시하고 URL을 치려고 시도했는데이 오류가 발생했습니다. 나는이 오류를 찾고, 내가 찾을 수있는 것은 Google 앱 초연 (2010 년경에 일반 Google 애플리케이션으로 접혀 있어야 했음)의 일부인이 부분에 대한 토론이었다. 나는 오랫동안 자신을 좌절 시켰습니다. 그것은 아주 단순한 것이어야하고 일하기를 거부하고 있습니다. 나는 기본 수준에서 잘못된 것을하고 있다고 가정하고 있지만, 내 뇌가 그것을 보지 못하는 지점에 도달했습니다.기본 UiApp가 "ReferenceError :"UIApp "오류로 인해 실패했습니다."

는 여기에 내가 시작 기본 스크립트입니다

function doGet(e) { 
var app = UiApp.createApplication(); 
var mainPanel = app.createVerticalPanel().setId('mainPanel'); 
mainPanel.add(app.createLabel('test')); 
return app; 
} 

내가 저장을 게시하고 URL에 가서 내가 위의 오류 메시지를받을 때입니다. 나는 그것이 단순한 것을 알고 있지만 좌절감에 도달했으며 단순히 볼 수는 없습니다.

답변

0

업데이트 :댓글
웹 어플리케이션은 새 버전을 게시하지 않습니다 업데이트 만 exec URL을 확인하지 않는 또 다른 가능성을 반영. 코드를 즉시 변경하려면 항상 dev URL을 확인하십시오. exec버전 관리에 버전을 저장하고 앱을 다시 게시 한 후에 만 ​​바뀝니다.

첫 번째 답변 :
나는 귀하의 질문 제목이 다라고 생각합니다.

UIApp은 정의되지 않지만 클래스는 UiApp입니다. JS는 대소 문자를 구분합니다. 귀하의 질문에 그대로 코드를 복사하여 붙여 넣었으며 오류가 발생하지 않았습니다. 레이블을 표시하려면 한 줄을 추가해야했습니다.

function doGet(e) { 
    var app = UiApp.createApplication(); 
    var mainPanel = app.createVerticalPanel().setId('mainPanel'); 
    mainPanel.add(app.createLabel('test')); 

    app.add(mainPanel); // <-- I added this line to see the label 

    return app; 
} 
+0

사례를 먼저 확인했습니다. 나는 그것이 처음 발생했을 때 실수로 "나는"자본을 알아 차렸고 실수로 그것을 자본화했다고 생각했습니다. 내 코드에서 맞습니다. UiApp – user3220484

+0

'/ exec' URL이나 dev URL을 확인하고 있습니까? '/ exec' URL을 검사하고 있다면, 새로운 버전을 저장하고 웹 응용 프로그램을 다시 게시해야합니다. 개발자 URL에 바로 변경 사항이 표시되어야합니다. – fooby

+0

좋은 선생님은 천재입니다. 나는/exec URL을하고 있었다. dev에 URL을 시도하고 그것은 챔피언처럼 일했습니다. 내가 얼마나 기분이 나아 졌는지 말해 줄 수 없어. 나는 솔직히 내가 내 마음을 잃어 가고 있다고 생각했다. :-) – user3220484

관련 문제