<template>
<!-- #ifdef APP -->
<scroll-view style="flex:1">
<!-- #endif -->
<view @click="onTop">
<text v-for="(n,i) in list" :class="['txt_'+i]">
{{n}}
</text>
</view>
<!-- #ifdef APP -->
</scroll-view>
<!-- #endif -->
</template>
<script>
export default {
data() {
return {
list:[] as string[]
}
},
created() {
for(let i=0;i<50;i++) {
this.list.push(i+':可以滚动到指定的scrollTop值处,也可以滚动到指定的目标元素处')
}
},
methods: {
onTop(){
uni.pageScrollTo({
selector:'.txt_30'
})
},
}
}
</script>
<style>
</style>

- 发布:2025-09-20 02:54
- 更新:2025-09-20 02:54
- 阅读:16
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: windows11
HBuilderX类型: 正式
HBuilderX版本号: 4.76
手机系统: Android
手机系统版本号: Android 15
手机厂商: iqoo
手机机型: Neo9
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
可以不需要手动滚动一下
可以不需要手动滚动一下
实际结果:
必须要手动滚动一下页面,才能正确运行uni.pageScrollTo
必须要手动滚动一下页面,才能正确运行uni.pageScrollTo
bug描述:
uniappx uvue页面调用uni.pageScrollTo报错,如果不进行手动滚动一下页面,则一直报错,多点击几次会出现大段错误
02:46:37.642 error: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
02:46:37.642 at pages/demo/demo.uvue:30:4
02:46:37.642 28 | methods: {
02:46:37.642 29 | onTop(){
02:46:37.642 30 | uni.pageScrollTo({
02:46:37.642 | ^^^^^^^^^^^^^^^^^^
02:46:37.642 31 | selector:'.txt_30'
02:46:37.642 32 | })
02:46:38.047 Possible Unhandled Promise Rejection: [java.lang.ClassCastException] {cause: null, message: "java.lang.String cannot be cast to java.lang.Number"}
02:46:43.919 error: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
02:46:43.919 at pages/demo/demo.uvue:30:4
02:46:43.919 28 | methods: {
02:46:43.919 29 | onTop(){
02:46:43.919 30 | uni.pageScrollTo({
02:46:43.919 | ^^^^^^^^^^^^^^^^^^
02:46:43.919 31 | selector:'.txt_30'
02:46:43.919 32 | })
02:46:43.919 Possible Unhandled Promise Rejection: [java.lang.ClassCastException] {cause: null, message: "java.lang.String cannot be cast to java.lang.Number"}
02:46:44.068 error: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
02:46:44.068 at pages/demo/demo.uvue:30:4
02:46:44.068 28 | methods: {
02:46:44.068 29 | onTop(){
02:46:44.068 30 | uni.pageScrollTo({
02:46:44.068 | ^^^^^^^^^^^^^^^^^^
02:46:44.068 31 | selector:'.txt_30'
02:46:44.068 32 | })
02:46:44.087 Possible Unhandled Promise Rejection: [java.lang.ClassCastException] {cause: null, message: "java.lang.String cannot be cast to java.lang.Number"}
02:46:44.226 error: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
02:46:44.226 at pages/demo/demo.uvue:30:4
02:46:44.226 28 | methods: {
02:46:44.226 29 | onTop(){
02:46:44.226 30 | uni.pageScrollTo({
02:46:44.226 | ^^^^^^^^^^^^^^^^^^
02:46:44.226 31 | selector:'.txt_30'
02:46:44.226 32 | })
02:46:44.236 Possible Unhandled Promise Rejection: [java.lang.ClassCastException] {cause: null, message: "java.lang.String cannot be cast to java.lang.Number"}
02:46:44.896 Possible Unhandled Promise Rejection: [java.lang.ClassCastException] {cause: null, message: "java.lang.String cannot be cast to java.lang.Number"}
02:46:44.896 error: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
02:46:44.896 at pages/demo/demo.uvue:30:4
02:46:44.896 28 | methods: {
02:46:44.896 29 | onTop(){
02:46:44.896 30 | uni.pageScrollTo({
02:46:44.896 | ^^^^^^^^^^^^^^^^^^
02:46:44.896 31 | selector:'.txt_30'
02:46:44.896 32 | })
02:46:46.128 Possible Unhandled Promise Rejection: [java.lang.ClassCastException] {cause: null, message: "java.lang.String cannot be cast to java.lang.Number"}
02:46:46.143 error: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
02:46:46.143 at pages/demo/demo.uvue:30:4
02:46:46.143 28 | methods: {
02:46:46.143 29 | onTop(){
02:46:46.143 30 | uni.pageScrollTo({
02:46:46.143 | ^^^^^^^^^^^^^^^^^^
02:46:46.143 31 | selector:'.txt_30'
02:46:46.143 32 | })
02:46:46.581 pl.deliverInputEvent(ViewRootImpl.java:11717)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:11668)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:11625)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:11889)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:314)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:352)
at android.os.Looper.loopOnce(Looper.java:202)
at android.os.Looper.loop(Looper.java:340)
at io.dcloud.px.i2.a(SourceFile:64)
at io.dcloud.px.i2$$ExternalSyntheticLambda2.run(D8$$SyntheticClass:0)
at android.os.Handler.handleCallback(Handler.java:1014)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:250)
at android.os.Looper.loop(Looper.java:340)
at android.app.ActivityThread.main(ActivityThread.java:9867)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:621)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:957)
---END:EXCEPTION---
02:46:46.735 error: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
02:46:46.735 at pages/demo/demo.uvue:30:4
02:46:46.735 28 | methods: {
02:46:46.735 29 | onTop(){
02:46:46.735 30 | uni.pageScrollTo({
02:46:46.735 | ^^^^^^^^^^^^^^^^^^
02:46:46.735 31 | selector:'.txt_30'
02:46:46.735 32 | })
02:46:46.735 thod)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:621)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:957)
---END:EXCEPTION---
02:47:35.086 error: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
02:47:35.086 at pages/demo/demo.uvue:30:4
02:47:35.086 28 | methods: {
02:47:35.086 29 | onTop(){
02:47:35.086 30 | uni.pageScrollTo({
02:47:35.086 | ^^^^^^^^^^^^^^^^^^
02:47:35.086 31 | selector:'.txt_30'
02:47:35.086 32 | })
02:47:35.086 \n\tat android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3141)\n\tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2860)\n\tat android.view.ViewGroup.dispatchTransformedTouchEventInternal(ViewGroup.java:3198)\n\tat android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3141)\n\tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2860)\n\tat android.view.ViewGroup.dispatchTransformedTouchEventInternal(ViewGroup.java:3198)\n\tat android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3141)\n\tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2860)\n\tat android.view.ViewGroup.dispatchTransformedTouchEventInternal(ViewGroup.java:3198)\n\tat android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3141)\n\tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2860)\n\tat com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:609)\n\tat com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:2093)\n\tat android.app.Activity.dispatchTouchEvent(Activity.java:4777)\n\tat io.dcloud.uniapp.appframe.activity.UniPageActivity.dispatchTouchEvent(SourceFile:1)\n\tat androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)\n\tat com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:558)\n\tat android.view.View.dispatchPointerEvent(View.java:17000)\n\tat android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:9129)\n\tat android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:8735)\n\tat android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:8086)\n\tat android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:8153)\n\tat android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:8114)\n\tat android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:8288)\n\tat android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:8122)\n\tat android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:8345)\n\tat android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:8090)\n\tat android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:8153)\n\tat android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:8114)\n\tat android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:8122)\n\tat android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:8090)\n\tat android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:11717)\n\tat android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:11668)\n\tat android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:11625)\n\tat android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:11889)\n\tat android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:314)\n\tat android.os.MessageQueue.nativePollOnce(Native Method)\n\tat android.os.MessageQueue.next(MessageQueue.java:352)\n\tat android.os.Looper.loopOnce(Looper.java:202)\n\tat android.os.Looper.loop(Looper.java:340)\n\tat io.dcloud.px.i2.a(SourceFile:64)\n\tat io.dcloud.px.i2$$ExternalSyntheticLambda2.run(D8$$SyntheticClass:0)\n\tat android.os.Handler.handleCallback(Handler.java:1014)\n\tat android.os.Handler.dispatchMessage(Handler.java:102)\n\tat android.os.Looper.loopOnce(Looper.java:250)\n\tat android.os.Looper.loop(Looper.java:340)\n\tat android.app.ActivityThread.main(ActivityThread.java:9867)\n\tat java.lang.reflect.Method.invoke(Native Method)\n\tat com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:621)\n\tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:957)\n"}}]---END:CONSOLE---
02:48:23.551 App Hide at App.uvue:13
0 个回复