{"record":{"id":"ddce9654980d7813","repo":"grafana/k6","slug":"evaluate-requires-a-page-function-ddce96","errorCode":null,"errorMessage":"evaluate requires a page function","messagePattern":"evaluate requires a page function","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"internal/js/modules/k6/browser/browser/js_handle_mapping.go","lineNumber":24,"sourceCode":"\t\"github.com/grafana/sobek\"\n\n\t\"go.k6.io/k6/v2/internal/js/modules/k6/browser/common\"\n)\n\n// mapJSHandle to the JS module.\nfunc mapJSHandle(vu moduleVU, jsh common.JSHandleAPI) mapping {\n\treturn mapping{\n\t\t\"asElement\": func() mapping {\n\t\t\treturn mapElementHandle(vu, jsh.AsElement())\n\t\t},\n\t\t\"dispose\": func() *sobek.Promise {\n\t\t\treturn promise(vu, func() (any, error) {\n\t\t\t\treturn nil, jsh.Dispose()\n\t\t\t})\n\t\t},\n\t\t\"evaluate\": func(pageFunc sobek.Value, gargs ...sobek.Value) (*sobek.Promise, error) {\n\t\t\tif sobekEmptyString(pageFunc) {\n\t\t\t\treturn nil, fmt.Errorf(\"evaluate requires a page function\")\n\t\t\t}\n\t\t\tfuncString := pageFunc.String()\n\t\t\tgopts := exportArgs(gargs)\n\t\t\treturn promise(vu, func() (any, error) {\n\t\t\t\treturn jsh.Evaluate(funcString, gopts...)\n\t\t\t}), nil\n\t\t},\n\t\t\"evaluateHandle\": func(pageFunc sobek.Value, gargs ...sobek.Value) (*sobek.Promise, error) {\n\t\t\tif sobekEmptyString(pageFunc) {\n\t\t\t\treturn nil, fmt.Errorf(\"evaluateHandle requires a page function\")\n\t\t\t}\n\t\t\tfuncString := pageFunc.String()\n\t\t\tgopts := exportArgs(gargs)\n\t\t\treturn promise(vu, func() (any, error) {\n\t\t\t\th, err := jsh.EvaluateHandle(funcString, gopts...)\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn nil, err //nolint:wrapcheck\n\t\t\t\t}","sourceCodeStart":6,"sourceCodeEnd":42,"githubUrl":"https://github.com/grafana/k6/blob/93accf6570dcd306ca5e99cc44c393ee3797761b/internal/js/modules/k6/browser/browser/js_handle_mapping.go#L6-L42","documentation":"Error \"evaluate requires a page function\" thrown in grafana/k6.","triggerScenarios":"Thrown at internal/js/modules/k6/browser/browser/js_handle_mapping.go:24 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"93accf6570dcd306ca5e99cc44c393ee3797761b","analyzedAt":"2026-08-15T21:23:27.118Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}