gpt4 book ai didi

javascript - '错误 : `VideoPlayer` has no propType for native prop `VideoPlayerView.scaleY` of native type `number`

转载 作者:太空狗 更新时间:2023-10-29 14:03:50 25 4
gpt4 key购买 nike

VideoPlayerView 是在 Android 和 IOS 中为我​​的特定项目制作的自定义原生组件。

这是ReactVideoManager.java生成的名为VideoPlayerView的原生模块导出代码的一部分

public class ReactVideoManager extends  SimpleViewManager<MeasureChangedVideoView> {

public static final String REACT_CLASS = "VideoPlayerView";

private ThemedReactContext mReactContext;

@Override
public String getName() {
return REACT_CLASS;
}

@Override
protected MeasureChangedVideoView createViewInstance(ThemedReactContext reactContext) {
mReactContext = reactContext;
return new MeasureChangedVideoView(reactContext);
}

@ReactProp(name = "url")
public void setUrl(MeasureChangedVideoView view, @Nullable String url) {
Uri uri = Uri.parse(url);
view.setVideoURI(uri);
view.setMediaController(new MediaController(mReactContext));

view.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
}
}

下面是为模块找到的错误日志:

Error: `VideoPlayer` has no propType for native prop `VideoPlayerView.scaleY` of native type `number`

这个原生view对应的js组件是VideoPlayer.js:

var React = require('react-native');
var { requireNativeComponent } = React;

class VideoPlayer extends React.Component {
render() {
return <VideoPlayerView {...this.props} />;
}
}
VideoPlayer.propTypes = {
url: React.PropTypes.string
};

var VideoPlayerView = requireNativeComponent('VideoPlayerView', VideoPlayer);
module.exports = VideoPlayer;

相同的模块曾经在不同的项目 B 中工作。发现的唯一区别是项目 B 中存在 react.gradle 文件。

完全不知道react.gradle文件是从哪里生成的。我还尝试重新启动 packager,再次清理项目构建。

项目中使用的gradle依赖为

compile "com.facebook.react:react-native:0.14.+"

最佳答案

绝对应该使用最新版本和文档中指定的方式 https://facebook.github.io/react-native/docs/native-components-android.html#content应该可以正常工作。

所以事实证明我使用的是 React 版本 0.13+(在 package.json 中)并且在 gradle 0.14 依赖项中引入了使用 @Reactprop 注释添加属性的方式,这种方式不适用于旧版本React-native(0.13).

如果由于某种原因你碰巧在 0.13 或 pre 上工作,请按照 https://github.com/facebook/react-native/issues/3478 中指定的手动混合 Prop 的方式必须遵守。

关于javascript - '错误 : `VideoPlayer` has no propType for native prop `VideoPlayerView.scaleY` of native type `number` ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33971914/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com