0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 小程序

用npm命令开始一个微信小程序开发者工具项目

发表时间:2023-09-09 07:28:44

文章来源:炫佑科技

浏览次数:222

菏泽炫佑科技 菏泽炫佑小程序开发 菏泽炫佑app制作 炫佑科技

用npm命令开始一个微信小程序开发者工具项目

文章来自:中文网

微信小程序的API实现需要考虑到方方面面,所以还是采用写法。

众所周知,-Hell(回调地狱)是传统JS语法中的一个历史问题。 但毕竟得心应手的工具才是开发效率的源泉,所以作者对当前版本的微信小程序API做了简单的封装——weapp。

同时,微信小程序框架本身专注于交互和UI实现,并没有提供内置的状态管理。 如果很多异步操作直接在App或者Page中一一实现的话,相信会很难开发,也很难测试。

因此,我为微信小程序实现了一个基于Redux方案的状态管理模块,方便小程序中的应用程序状态管理 redux-weapp 。

特别是微信小程序在构建(编译)时不支持App范围之外的文件,所以npm在这里不太好用。

因此,我们需要在应用程序本地实时构建依赖,并在微信小程序中引用本地的依赖。

对于这个构建场景,我认为是*方便的解决方案。

开始之前用npm命令开始一个微信小程序开发者工具项目,需要准备好安装工具和依赖模块,下载微信小程序开发工具

开发工具是NW.js模拟的环境。 在微信里,就是环境。

但不用担心,它们只是两个不同的虚拟机,但本质上是相同的。

NW.js可能有一些小bug,编写代码时注意一下即可。

使用npm命令启动微信小程序项目

我的应用程序

npm 初始化

开始安装必要的依赖模块

因为除了小程序运行时需要的模块之外,还有构建时需要的模块。

看起来可能很多,但不用担心,大多数都是声明性的,不需要您直接调用它们。

为了方便经验较少的同学理解,我会一步步安装这些依赖。

首先是代码翻译工具Babel:

--save-dev babel-cli babel-core babel- babel--add-- babel- babel-- babel--stage-0

通过上述模块,您可以在构建时将 ES6/7 代码翻译为 ES5 代码(事实上,解释器只识别 ES5)。

接下来我们安装打包工具:

--保存-dev

我们只需要打包代码,不需要dev和hot函数。

因此,我们只需要安装自身即可,无需安装其他扩展和插件。

接下来,让我们安装 Redux:

redux-thunk --save-dev

需要注意的是,由于在实际应用中,我们经常需要异步调用API服务器接口,因此我们还需要redux-thunk模块来处理异步行为。

然后安装开发小程序辅助模块:

//redux-weapp--save-dev

其中weapp模块是针对微信小程序API的,提供了更易用的API微信小程序开发下载,而redux-weapp则基于Redux来管理微信小程序的状态。

创建项目目录结构

10

11

12

13

14

15

我的应用程序

|- es6 # 源代码

|- myapp.js # 这个文件在app.js文件中

|- lib # 存放编译好的js文件

|- pages #小小程序页面定义

|-

|-.js

|-.json

|-.wxml

|- .wxss

...

|- app.js #小小程序入口文件

|-app.json

|- 应用程序.wxss

|- ..js # 配置文件

编写构建脚本

首先你要写..js,这个是必须的。

由于本次构建是为了本地化微信小程序的依赖,所以我们只处理JS文件。 如果需要打包其他资源,请自行研究。

而且,值得注意的是,微信小程序包有1MB的上限。

10

11

12

13

14

15

16

17 号

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

//..jsvar path=('path'), =('')var ={

test:/\.js$/,//也可以使用.es6作为文件扩展名,然后在这里定义对应的

:'通天塔',

query: {//代码翻译默认,不包含ES新特性,需要在具体代码中显示

: ["","阶段 0"]

},//指定翻译es6目录下的代码

: path.join(,'es6'),//指定不翻译的代码

: 路径.join(,'')

}.={// 选项,建议开发时包含,版本时删除(节能减排)

: null,//指定es6目录为目录,这样下面的入口部分就会少一些`../`。

: path.join(,'es6'),//定义要打包的文件//例如:`{entry: {out: ['./x','./y','./z'] }} ` 表示:将x、y、z等文件打包成一个文件,命名为:out//具体请参考文档

入口: {

myapp:'./myapp'

},

: {//将打包后的文件输出到lib目录下

path: path.join(,'lib'),//将打包文件命名为myapp,`[name]`可以理解为模板变量

:'[name].js',//规范为`umd`,兼容amd,具体请参考文档

: '嗯'

}, : {

:[]

},

:{

: ['', '.js'],//指定es6目录为加载目录,这样/时文件会自动在这个目录下(可以省很多../)

: ['es6','']

},

:[ new .(),//通常需要区分dev和dev。 建议定义该变量 //编译后会在 .({'.env': {'': JSON.('' ) 中定义 `.env`

})

定义 npm 命令

首先是代码测试命令测试。

由于我喜欢使用Jest,所以这里也以Jest为例。

// .json"": { "": " es6", //推荐静态检查 "test": "jest",

...

},

..., // jest 允许在 .json 中定义配置 "jest": { "": false, "bail": true, "": { ".js": "//babel-jest" //使用巴贝尔翻译

},"": ["/测试/"

],"":".test.js$","": ["//"

],"ns": ["//"

接下来就是激动人心的构建命令了。成败全靠这个

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多