Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript React应用程序中未定义此.props.function()?_Javascript_Function_Reactjs_Redux - Fatal编程技术网

Javascript React应用程序中未定义此.props.function()?

Javascript React应用程序中未定义此.props.function()?,javascript,function,reactjs,redux,Javascript,Function,Reactjs,Redux,我目前正在构建一个react redux应用程序,当我单击“保存”按钮时,该应用程序应在actions/index.js中调用函数addToSaved。但是,我得到的错误是“this.props.addToSaved未定义”,而不是函数。我在actions/index.js中定义了这个函数,但我想知道我是否遗漏了其他内容。以下是我目前正在做的事情: 在components/MainView.js中: 'use strict'; import { addToSaved } from "../act

我目前正在构建一个react redux应用程序,当我单击“保存”按钮时,该应用程序应在actions/index.js中调用函数addToSaved。但是,我得到的错误是“this.props.addToSaved未定义”,而不是函数。我在actions/index.js中定义了这个函数,但我想知道我是否遗漏了其他内容。以下是我目前正在做的事情:

在components/MainView.js中:

'use strict';
import { addToSaved } from "../actions"

var React = require('react-native');
var {
    StyleSheet,
    Image,
    View,
    Text,
    Component,
    TouchableHighlight
} = React;


class MainView extends Component {
    onSearchPressed() {
        console.log('search pressed');
        this.props.addToSaved();
    }
    render() {
        return (
            <View style={styles.container}>
                <Image style={styles.image}
                    source={{uri: pic.img_url}} />
                <TouchableHighlight style = {styles.button}
                        onPress={this.onSearchPressed.bind(this)}
                        underlayColor='#99d9f4'>
                        <Text style = {styles.buttonText}>Save</Text>
                </TouchableHighlight>
            </View>
        );
    }
}

module.exports = MainView;

}

您正在导入
addToSaved
,并希望它出现在
这个.props上

如果要在
this.props
上访问它,需要将其传递到组件实例:


您正在导入
addToSaved
,并希望它出现在
这个.props上

如果要在
this.props
上访问它,需要将其传递到组件实例:



似乎是问题所在,在使用道具声明组件时,请确保已添加道具验证@bchemy,以便我仍应导入addToSaved,但也应将该行添加到MainView类中?您不需要将
addToSaved
导入
MainView.js
,但您确实需要将其导入到实例化
MainView
(即通过
)的任何文件中,并添加该行。问题似乎在于,另外,在使用道具声明组件时,请确保已添加道具验证@bchemy,以便我仍应导入addToSaved,但也应将该行添加到MainView类中?您不需要将
addToSaved
导入
MainView.js
,但需要将其导入到实例化
MainView
的任何文件中(即通过
)并添加该行。
var actions = exports = module.exports
exports.ADD_SAVED = 'ADD_SAVED'
exports.addToSaved = function addToSaved() {
    console.log('got to ADD_SAVED');
<MainView addToSaved={addToSaved} />