美文网首页
taro笔记

taro笔记

作者: XP逆袭 | 来源:发表于2019-07-11 17:18 被阅读0次

    #### 注意事项

    1. 一个文件只能创建一个组件;**子组件标签首字母需大写**;

    2. 更新数据只能使用 setData(异步操作),第二个参数选填,可以拿到更新后的数据;

    3. 布局单位使用 rpx,750 设计稿是多少就填多少;

    4. 已对 loading、error 进行封装,使用时只需在 temp 标签内正常布局;

    5. class 使用 className;

    6. 变量统一包裹在{}中;

    7. 在绑定需要手动触发的事件中,只能在函数里编写,这种写法会默认执行一次;

      ```

      <View onClick={isFlag=true}></View>

      ```

    但在 jsx 中使用匿名函数会占用大量内存空间,所以尽量不要使用匿名函数;

    8. 在给子组件传递函数时,函数需用 bind 绑定 this。子组件在事件里给父组件传递参数时,用 bind(this);

    9. 给子组件传递 jsx 代码时,只能用**renderHeader**、**renderFooter**;

    10. 引用本地图片的时候,只能使用以下方式;

        ```

        import errorImage from './images/icon_error.png'

        ```

    11. 上拉加载用**onReachBottom** () {} 没效果,需要用箭头函数。所以函数统一使用箭头函数;

    12. 给 input 做双向数据绑定时,使用 e.detail.value 赋值;

    13. **添加一个新组件之后页面不显示,终端也没报错,重启终端解决;**

    14. 列表添加无数据判断时,需要使用一个状态传至列表,不能直接根据 length 判断。因为暂无数据的样式会一闪,然后才是列表数据。

    15. 上传图片需要指定**header**的**centent-type**,不然 ios 手机有兼容问题;

    16. render 渲染中,如果一个对象有一个字段是数组,做容错处理时,只需判断该字段是否存在,不必加 length 的判断,不然偶尔 length 会拿不到值。如:

        ```

        {item.creditSaleInfo && (

          <View className='ul'>

            {item.creditSaleInfo.map((v, i) => {

              return (

                <View className='li' key={v.id + i}>

                  {v}

                </View>

              );

            })}

          </View>

        )}

        ```

    #### 控制台常见报错:

    - Uncaught TypeError: e.trim is not a function

      `解决:标签的className不能为空`

    - Uncaught TypeError: Cannot read property 'apply' of undefined

      ```

      解决:(1)给子组件传递事件代理程序时,需给props指定默认值

          (2)dom中调用了js未定义的方法

      ```

    #### 命令行常见报错:

    - sh: taro: command not found

      `解决:执行 sudo npm i -g @tarojs/cli --unsafe-perm=true --allow-root`

    - TypeError [ERR_INVALID_ARG_TYPE]: The "to" argument must be of type string. Received type object

      `解决:把组件的文件夹改个名字就ok了。原因未知`

    - const anonymousState\_\_temp = ;

      `解决:在return与render之间,给子组件传递dom的内容中存在 {/* <!-- --> */}注释;`

    - Cannot read property 'css' of undefined

      ```

      解决:(1)缺少Sass环境

          (2)Sass文件里缺少引用资源

      ```

    相关文章

      网友评论

          本文标题:taro笔记

          本文链接:https://www.haomeiwen.com/subject/taeerttx.html