微信小程序开发之路(二)

 2023-09-05 阅读 271 评论 0

摘要:由于前段时间比较忙,已经有半个多月没有更新文章了。最近微信小程序频繁更新,越来越开放,所以今天我们将继续探讨小程序。 在微信小程序开发之路(一)中讲到微信小程序的单向绑定以及使用setData()方法来更新View,这对于新手也算是

由于前段时间比较忙,已经有半个多月没有更新文章了。最近微信小程序频繁更新,越来越开放,所以今天我们将继续探讨小程序。

在微信小程序开发之路(一)中讲到微信小程序的单向绑定以及使用setData()方法来更新View,这对于新手也算是个“坑”了,很容易出错。下面将继续分享我在开发小程序过程中所遇到的“坑”。

一、onLaunch方法只能在app.js中的App()中定义

这个其实熟悉文档的话就很好理解了,onLaunch方法只在小程序初始化完成时触发,全局只触发一次,所以在页面的Page()中写这玩意儿是无效的,当然也不会报错,这才导致新手容易犯错。

二、局部js文件若要调用app.js中的方法或获取其中的数据,可通过getApp()的方式来获取

首先需要强调的是,app.js虽然说可以定义全局方法或数据,但是在局部js文件中却无法直接调用。其次还需注意的是,在app.js中的全局方法必须要在App()中定义,否则无法在局部调用。简单举个栗子吧~~~

//app.js
App({b(){console.log("b");},globalData:{ccc: 'ccc'}
})function a(){console.log('a');
}
//pages/test/test.js
var app = getApp();
Page({data:{},onLoad:function(options){// a();     // 报错// app.a();     // 报错app.b();     // bconsole.log(app.globalData.ccc);    // ccc}
})

其实这样也不难理解,我们通过getApp方法可以直接获取小程序实例,然后就能很开心的调用和获取App()中定义的方法和数据咯~~

三、若项目中需要使用登录接口wx.login(),在使用微信开发工具建项目时须填入AppID

四、支持JSON.stringigy()和JSON.parse()这两个方法,但需要注意的是,使用JSON.parse()时传入的参数必须是标准的JSON格式的字符串

刚开始以为小程序不支持JSON.parse()方法,因为在实际用的时候报错了,后来才发现原来是自己JS技术不过关。在使用该方法时,要特别注意传入的参数格式,举个例子:

// pages/test/test.js
var app = getApp();
Page({data:{},onLoad:function(options){console.log(JSON.stringify({aaa: 111}));   //  这个方法倒是可以传入普通的JS对象字面量,返回{"aaa":111},这是个字符串console.log(JSON.parse('{"aaa": 111}'));     //  标准的JSON格式的字符串,返回{aaa: 111},这是个对象// console.log(JSON.parse("{'aaa': 111}"));    //  报错// console.log(JSON.parse("{aaa: 111}"));      //  报错}
})

其实就是考验对这两个JS方法的掌握,跟小程序没啥关系,对这两个方法特别熟悉的可以直接跳过。

结束语:其实不管学什么,都不能仅仅只停留在理论,否则理论再好你也不一定掌握,学习的精髓其实在于多看、多练和多写。比如你看完本文,或许你觉得某个地方可能不太正确,这时候你就可以自己写个Demo试一试,最后你可能觉得这个知识点很好可又担心记不住,这时候你就应该把它写下来。今天就先分享到这里,后续会继续分享更多关于小程序的干货哦~~

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/684.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息