React-sketchapp: react-primitives Touchable doesn't work

Created on 22 May 2017  路  7Comments  路  Source: airbnb/react-sketchapp

First of all, thanks for this awesome project! I'm investigating how this could work at our company to get more client-facing component building in the design team realm and it seems really viable so far!

Now, I may be wrong about the expected behavior, but I thought that all of the react-primitives would work for react-sketchapp. I wouldn't expect Touchable to do anything in sketch, but I was hoping that it would transparently render so I could share components with interactions with the web and native.

When I attempt something like this:

import React from 'react';
import { Text, View, Touchable } from 'react-primitives';

const Button = (props) => (
    <Touchable onPress={() => console.log('hi')}>
        <View>
            <Text>{props.children}</Text>
        </View>
    </Touchable>
);

export default Button;

I am getting an error that says:

TypeError: this.touchableGetInitialState is not a function. See the screenshot below:

screen shot 2017-05-22 at 10 08 57 am

It works fine when I render it on the web, so it stands to reason this is not an issue with react-primitives. Let me know if I am expecting something that shouldn't work at all, but it seems logical to me that Touchable should at least render and not be interactive in Sketch.

I am using Sketch 43.2 and react-sketchapp 0.10.0

bug external-dependency

Most helpful comment

Yes. Still not working with 0.4.3. (using CRNA)

"react": "15.4.0",
"react-dom": "15.4.0",
"react-primitives": "^0.4.3",

All 7 comments

Thanks for reporting @tysoncadenhead - looks like we have a fix coming, bear with us 馃檹

Should be fixed with react-primitives@^0.4.3

To confirm, it doesn't seem to be fixed in react-primitives@^0.4.3. I'm using CRNA:

"dependencies": { "expo": "^18.0.3", "react": "16.0.0-alpha.12", "react-native": "^0.45.1" }

https://github.com/lelandrichardson/react-primitives/issues/71#issuecomment-312650514 states that "React 16" isn't compatible yet, but CRNA (and react-native init) only function correctly with React 16+

Any ideas on timings to resolve this?

cc @lelandrichardson

Yes. Still not working with 0.4.3. (using CRNA)

"react": "15.4.0",
"react-dom": "15.4.0",
"react-primitives": "^0.4.3",

@mathieudutour is this working on react 16.3? I'm having this same issue using v0.5 and react 16.3

Was this page helpful?
0 / 5 - 0 ratings

Related issues

sherry255 picture sherry255  路  3Comments

0x77dev picture 0x77dev  路  5Comments

tafelito picture tafelito  路  4Comments

vjpr picture vjpr  路  7Comments

kirill-konshin picture kirill-konshin  路  7Comments