Android 应用程序在发布版本时崩溃:ReferenceError:Can';找不到变量

Android 应用程序在发布版本时崩溃:ReferenceError:Can';找不到变量,android,react-native,Android,React Native,我遇到了一个奇怪的问题。在调试版本上,一切都非常好。但当我构建发布版本时,它会崩溃。我用一个本地根吐司库来祝酒,但我不确定这是否是库的错 使用adb logcat,我成功地获得了一个日志: 01-28 12:25:59.571 12750 12771 E AndroidRuntime: Process: com.cjournal, PID: 12750 01-28 12:25:59.571 12750 12771 E AndroidRuntime: com.facebook.react.comm

我遇到了一个奇怪的问题。在调试版本上,一切都非常好。但当我构建发布版本时,它会崩溃。我用一个本地根吐司库来祝酒,但我不确定这是否是库的错

使用adb logcat,我成功地获得了一个日志:

01-28 12:25:59.571 12750 12771 E AndroidRuntime: Process: com.cjournal, PID: 12750
01-28 12:25:59.571 12750 12771 E AndroidRuntime: com.facebook.react.common.JavascriptException: ReferenceError: Can't find variable: toast, stack:
01-28 12:25:59.571 12750 12771 E AndroidRuntime: showToast@686:121
01-28 12:25:59.571 12750 12771 E AndroidRuntime: default@680:617
01-28 12:25:59.571 12750 12771 E AndroidRuntime: @397:3871
01-28 12:25:59.571 12750 12771 E AndroidRuntime: j@397:5845
实现祝酒的代码:

从“react native root Toast”导入Toast
导出函数showToast(消息){
祝酒词(信息“#005500”)
}
导出功能错误(消息){
祝酒辞(留言“55万”)
}
功能吐司(信息、颜色){
toast=toast.show(留言、{
持续时间:Toast.durations.LONG,
位置:Toast.positions.BOTTOM,
影子:没错,
动画:没错,
真的,
延迟:0,
背景颜色:颜色,
onShow:()=>{
//对toast的调用显示动画开始
},
onShown:()=>{
//toast\'上的调用显示为动画结束。
},
onHide:()=>{
//调用toast的隐藏动画开始。
},
onHidden:()=>{
//在toast的隐藏动画结束时调用。
},
})
}

在调试时,它非常好。在发布时,它崩溃了。现在,我关闭了函数
showtoos
的调用,现在它没有崩溃。所以我的问题是我能不能修复它。由于它在调试中工作,我想库很好,我的构建有问题。

你能尝试将函数更改为下面的代码中的胖箭头,并将该函数置于顶部,因为在调试模式下,它使用不同的引擎来处理JS数据,所以请尝试以下方法:

import Toast from 'react-native-root-toast';

const toast = (message, color) =>  {
    let toast = Toast.show(message, {
        duration: Toast.durations.LONG,
        position: Toast.positions.BOTTOM,
        shadow: true,
        animation: true,
        hideOnPress: true,
        delay: 0,
        backgroundColor: color,
        onShow: () => {
            // calls on toast\`s appear animation start
        },
        onShown: () => {
            // calls on toast\`s appear animation end.
        },
        onHide: () => {
            // calls on toast\`s hide animation start.
        },
        onHidden: () => {
            // calls on toast\`s hide animation end.
        },
    })
}
export function showToast(message) {
    toast(message, '#005500')
}

export function showError(message) {
    toast(message, '#550000')
}

希望能有帮助。请不要怀疑。

cna您可以分享一些代码,您在哪里默示了toast,以便我们可以确认。我用有效的代码更新了问题。非常感谢您的修复和提供的信息。从现在起我会记住的。