加载中 ...
首页 > 新闻资讯 > 经验心得 正文

展开微信小程序Component类型定义

2019-07-12 22:17:31 来源:沈阳小程序开发 作者:沈阳软件开发

引言

与ColorUI相比,原始导航栏很难看,无法看到。为了不损坏框架的整体风格,我决定遵循框架的设计并自定义导航栏。

101615kx7sfvsasczz0dk0.jpg

由于使用了很多页面,请考虑组件!

原生组件

本机JavaScript组件如下所示:

组件({/** *组件属性列表* /属性: {星形: {类型:数字,值: 0}},/** *组件的初始数据*/data: {},/** *组件方法列表* /方法: {init: function(){}},附加: function(){this.init();}});

沈阳微信小程序

ad.jpg

TypeScript组件

考虑使用TypeScript开始编写组件,编写组件时没有提示。

咦?官方TypeScript API中是否有Component方法?

101615dvwy3x3xhs1xgxxv.jpg

我发现了一个圆圈而我找不到它。

101615spq5db2o6x16q5qj.jpg

开设了腾讯官方的小程序仓库,并发现了一个大问题,该问题于1月19日提出。它还没有解决。

我很好奇这个问题的哥哥最终是如何解决它的。我在官方图书馆里面没有错误。我不会写的吗?

探究

看 Page 源码

定义页面:

页({})

定义组件:

组分({})

通过观察,我发现Component和Page是相似的。我想看看Page如何定义类型。我可以复制吗?

.d.ts

这是Page的类型声明文件。我第一次进去看了它。这很尴尬,我不明白,我觉得很尴尬。

101616cqzcvv38cr63hrph.jpg

一开始,我不知道如何创建一个新的wx.extend.d.ts并开始复制代码。我复制了它,发现我学到了它。

/** * 微信小程序Extended类型组件TypeScript * @author zhangxishuo */declare namespace YunzhiComponent {/** *组件实例对象*数据:组件内部属性规范*/interface ComponentInstance {/** *组件外部属性*/properties?对象|地图;/** *组件内部数据* /数据?数据;/** *组件内部方法* /方法?对象; }/** *组件构造函数*/interface ComponentConstructor {={}> (选项: ComponentInstance& T): void}} declare const Component: YunzhiComponent.ComponentConstructor;

总结

我之前不知道.d.ts,在我写完之后,我发现什么都没有。此文件是用于编写TypeScript的代码提示。编译时,会提示提示类型。实际上,最终函数与.d.ts文件无关。

鲍剑锋砸了出来,梅花来自苦寒。

996. ICU是最热门的话题,为什么996?

加班,会提高生产力吗?编写代码是一项神奇的工作,相同的功能,一小时就可以了,如果你让他加班,那就是三个小时?他将如何选择?除非必要,否则永远不要加班,因为他们会把工作留到晚上。

程序员为什么不考虑它,我为什么要在这里加班呢?请记住,世界是公平的。

总之,不建议加班。但是,如果生产率低而且你不加班呢?

“沈阳软件公司”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与

我们联系删除或处理,客服QQ:55506560,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同

其观点或证实其内容的真实性。