Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

style属性在小程序和react-native上编译问题 #2803

Closed
zWingz opened this issue Apr 17, 2019 · 11 comments
Closed

style属性在小程序和react-native上编译问题 #2803

zWingz opened this issue Apr 17, 2019 · 11 comments
Assignees
Labels
T-rn Target - 编译到 React Native

Comments

@zWingz
Copy link
Contributor

zWingz commented Apr 17, 2019

style 编译到小程序, 不支持object类型

<View style={{left: '10px'}}>test</View>

转成小程序

// ...
var $loopState__temp2 = { left: '10px' };
return {
    $loopState__temp2: $loopState__temp2
 };
<view style="{{item.$loopState__temp2}}"></view>

小程序最终显示的是

<view style="[object Object]"></view>

style 编译到react-native, 不支持字符串

<View style='left: 10px;'>test</View>

会直接报错, 代码
image

环境信息

@tarojs/taro@1.2.26

@taro-bot
Copy link

taro-bot bot commented Apr 17, 2019

欢迎提交 Issue~

如果你提交的是 bug 报告,请务必遵循 Issue 模板的规范,尽量用简洁的语言描述你的问题,最好能提供一个稳定简单的复现。🙏🙏🙏

如果你的信息提供过于模糊或不足,或者已经其他 issue 已经存在相关内容,你的 issue 有可能会被关闭。

Good luck and happy coding~

@js-newbee
Copy link
Contributor

@zWingz 附上版本信息之类的吧,项目中一直都是这么写的,没有问题

@zWingz
Copy link
Contributor Author

zWingz commented Apr 18, 2019

@js-newbee 小程序的style不支持引用object的吧 ?

@js-newbee
Copy link
Contributor

@js-newbee 小程序的style不支持引用object的吧 ?

@zWingz 当然是不支持... 我说的是用 Taro 写的,Taro 会处理这个的,所以让你提供版本信息啊,不然怎么排查问题...

@zWingz
Copy link
Contributor Author

zWingz commented Apr 18, 2019

@js-newbee 上面已经补了

@js-newbee
Copy link
Contributor

@zWingz 我用 taro init 新建了一个 1.2.26 的项目,复现不了,编译后的代码为:

var anonymousState__temp = (0, _index.internal_inline_style)({ left: '10px' });
Object.assign(this.__state, {
  anonymousState__temp: anonymousState__temp
});

建议提供下可复现的完整代码

@zWingz
Copy link
Contributor Author

zWingz commented Apr 18, 2019

@js-newbee
image
如果class名字为_C, 则会有这个问题, 如果是其他名字则不会
通过taro-covert将原生小程序转成taro, 类名都会改成_C, 因此有了这个问题

@zWingz
Copy link
Contributor Author

zWingz commented Apr 18, 2019

至于react-nativestyle为字符串时, 问题都存在

@js-newbee
Copy link
Contributor

@js-newbee
image
如果class名字为_C, 则会有这个问题, 如果是其他名字则不会
通过taro-covert将原生小程序转成taro, 类名都会改成_C, 因此有了这个问题

确实是,类名为 _C 时不正常...
@yuche 大佬给看看吧,taro-transformer-wx/src/index.ts 第 480 行

@taro-bot
Copy link

taro-bot bot commented Apr 19, 2019

CC @Pines-Cheng

@biorz
Copy link
Member

biorz commented Aug 24, 2022

新版本已解决。

@biorz biorz closed this as completed Aug 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T-rn Target - 编译到 React Native
Projects
None yet
Development

No branches or pull requests

7 participants