前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >uni-app: 如何高效开发?

uni-app: 如何高效开发?

作者头像
Javanx
发布2019-10-21 18:07:53
3.3K0
发布2019-10-21 18:07:53
举报
文章被收录于专栏:web秀web秀web秀

前言

本文主要是讲解Uni-App开发技巧,如何快速的撸码?如何调试Uni-App?通过本文,让小伙伴们开发出优秀的Uni-App。

代码模板快速生成代码块

HBuilderX和VS Code、Sublime Text一样,都可以代码模板来快速生成代码。而HBuilderX代码块分为Tag代码块、JS代码块,如在 script 标签内输入 uShowToast 回车,会自动生成如下代码:

uni.showToast({
    title: '',
    mask: false
    duration: 1500
});

在template模板中,输入uCheckbox 回车,会自动生成如下代码:

<label>
    <checkbox :value="" /><text></text>
</label>

下面我们来看看有HBuilderX提供哪些内置Tag代码块和JS代码块。

Tag代码块

uButton

uCheckbox

uGrid:宫格,需引用uni ui

uList:列表,需引用uni ui

uListMedia

uRadio

uSwiper

...

几乎各种组件不管是内置组件还是uni ui的组件,均已封装为代码块,在HBuilderX的vue代码template区域中敲u,代码助手会提示10个代码块列表,如果没有,需要输入更详细的关键字。也可在HBuilderX菜单工具-代码块设置-vue代码块的左侧列表查阅所有。

下面输入us,查看uSwiper代码块:

除组件外,其他常用代码块包括:

viewfor:生成一段带有v-for循环结构的视图代码块 vbase:生成一段基本的vue代码结构

JS代码块

1、uRequest 请求代码模板

    uni.request({
    url: '',
    method: 'GET',
    data: {},
    success: res => {},
    fail: () => {},
    complete: () => {}
});

2、uGetLocation 获取定位代码模板

uni.getLocation({
    type: 'wgs84',
    success: res => {}
    fail: () => {},
    complete: () => {}
});

3、uShowToast 提示框代码模板

4、uShowLoading 显示loading代码模板

5、uHideLoading 隐藏loading代码模板

6、uShowModal 显示模态弹框代码模板

7、uShowActionSheet 显示操作菜单代码模板

8、uNavigateTo

9、uNavigateBack

10、uRedirectTo

11、uStartPullDownRefresh

12、uStopPullDownRefresh

13、uLogin

14、uShare

15、uPay

......

其他代码模板

1、vImport:导入文件

2、ed:export default

3、vData:输出 data(){return{}}

4、vMethod:输出 methods:{}

5、vComponents:输出 components: {}

6、ifios:iOS的平台判断

7、ifAndroid:Android的平台判断

8、iff:简单if

9、forr:for循环结构体

10、fori:for循环结构体并包含i

11、funn:函数

12、funa:匿名函数

13、rt:return true

14、clog:输出:"console.log()"

15、clogvar:增强的日志输出,可同时把变量的名字打印出来

16、varcw:输出:"var currentWebview = this.$mp.page.$getAppWebview()"

当然,如果预置代码块不满足需求的话,可以自定义代码块

自定义代码块

点菜单-工具-代码块设置,选择你要查看的语言的代码块。

打开的界面中,左侧即是预置的代码块,右侧是开发者可以自己扩展代码块的地方。

掌握这些代码块,开发快的不止一点点哦。

如何调试uni app

Chrome 调试 H5

uni-app H5调试,就和我们平常调试网页一样哦,进入 uni-app 项目,点击工具栏的运行 -> 运行到浏览器 -> 选择 ChromeF12开始调试。需要注意:Chrome调试只能保证样式一致,部分原生能力是不支持的,比如获取定位,支付等。如果不是使用HBuilderX内置浏览器调试,网络请求也是不能跨域的哦,而内置浏览器是允许跨域的,同时内置浏览器也能模拟获取定位,不过都是北京市的定位。

小程序开发工具调试

uni-app 运行到微信web开发者工具等小程序开发工具里,可在这些工具的控制台查看 console 信息,网络请求等信息等。

页面样式调试和一般的web项目一样,通过调试的箭头选中元素即可查看相应的节点和样式,如下图:

调试 js 时需要切换到 Sources 栏,选中想要调试的那个页面的js,进行调试(如果js代码是压缩过的,点击右下角的{}可格式化代码),如下图:

App调试

在HBuilderX的运行菜单里运行App,手机端的错误或console.log日志信息会直接打印到控制台。

但是需要更多功能,比如审查元素、打断点debug,则需要启动调试模式。自 HBuilderX 2.0.3+ 版本起开始支持 App 端的调试。

在 HBuilderX 中,正确运行项目: 运行 --> 运行到手机或模拟器 --> 选择设备,项目启动后,在下方的控制台选择 debug 图标:

正确打开调试窗口后,显示如下:

Elements 主要显示当前页面的组织结构,目前Elements只支持nvue。

在调试窗口控制台的 Sources 栏,可以给 js 打断点调试。

之后,在设备上进行操作,进入断点位置,可以方便我们跟踪调试代码。

提示

debug仅支持自定义组件模式。如果是非自定义组件模式,请在manifest里配置选为自定义组件模式。非自定义组件模式即将停止支持,

vue 和 nvue 页面均支持断点调试

目前仅支持 nvue 页面审查元素,vue 页面暂不支持,以及 Android 平台的 nvue 审查元素暂不支持查看 style

App端提供真机运行的console.log日志输出,运行到真机或模拟器时,不用点debug按钮,运行手机App,会在HBuilderX的控制台直接输出日志。

如果是调试App的界面和常规API,推荐编译到H5端,点HBuilderX右上角的预览,在内置浏览器里调Dom,保存后立即看到结果,调试更方便。并且H5端也支持titleNView的各种复杂设置。唯一要注意的就是css兼容性,使用太新的css在pc上预览可能正常,但低端Android上异常,具体可查询caniuse等网站。 常用的开发模式就是pc上使用内置浏览器预览调dom,运行到真机上看console.log。如果是很复杂的问题才使用debug。

vue页面也可以在微信开发者工具里调试,除了plus API,其他是一样的,微信开发者工具的查看Dom和网络和存储等调试工具相对而言更完善些。 注意:即使不发布微信小程序、只发布App,也需要安装微信开发者工具。

uni-app的App端没有5+App那种webkit remote debug,因为uni-app的js不是运行在webview里,而是独立的jscore里。

部分manifest配置,如三方sdk配置,需要打包后生效的,可以打包一个自定义运行基座。打包自定义基座后运行这个自定义基座,同样可以真机运行和debug。打包正式包将无法真机运行和debug。

总结

本文主要是讲讲Uni App开发技巧,快速撸码技巧和调试技巧,掌握这2点,相信你可以开发出优秀的Uni App。

最后,谢谢大家支持。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 代码模板快速生成代码块
    • Tag代码块
      • JS代码块
        • 其他代码模板
          • 自定义代码块
          • 如何调试uni app
            • Chrome 调试 H5
              • 小程序开发工具调试
                • App调试
                  • 提示
                  • 总结
                  相关产品与服务
                  云开发 CLI 工具
                  云开发 CLI 工具(Cloudbase CLI Devtools,CCLID)是云开发官方指定的 CLI 工具,可以帮助开发者快速构建 Serverless 应用。CLI 工具提供能力包括文件储存的管理、云函数的部署、模板项目的创建、HTTP Service、静态网站托管等,您可以专注于编码,无需在平台中切换各类配置。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档