#ohpm #arkTS #dayjs
问题
在学习过程中,有需要用到dayjs这个JavaScript库。
一开始用npm下载包后,在page页面中引用node_modules文件夹里的dayjs,项目一直报错
Failed to get an resolved OhmUrl by filepath ‘rollup_plugin_ignore_empty_module_placeholder’
在官方文档中搜的问题是由于工程引用无对应实现文件的.d.ts声明文件:
解决方式
- 试了好久实在是搞不明白为啥报错,直到我在网上找到了ohpm
- 在ohpm上正好有我需要用到的dayjs库,干脆把npm拉的dayjs卸载了,改用oppm,毕竟是官方的,更加适配鸿蒙应用开发
ohpm——OpenHarmony三方库中心仓
概述:
OHPM(OpenHarmony Package Manager)由OpenHarmony三方库中心仓网站、命令行工具、OpenHarmony三方库中心仓仓库三个部分组成,其功能如下:
- OpenHarmony三方库中心仓网站(website):用于检索、查看所需 OpenHarmony 三方库信息,也可管理关于 ohpm 的个人配置
- 命令行工具(cli):OpenHarmony 三方库的包管理工具
- OpenHarmony三方库中心仓仓库(registry):存储三方库软件及其元数据的仓库,其地址为:[https://ohpm.openharmony.cn/ohpm](https://ohpm.openharmony.cn/ohpm)
以上是官方的描述,就我的理解来说,这就是个鸿蒙版的npm库,用法也和npm差不多,里面有很多常用的开源js库,包括dayjs、crypto-js、Axios等,不过目前还不成熟,要使用之前最好去官网查一下是否有这个包:
使用
命令终端切换到对应的 Ability文件夹下:
也可以在根目录下载,则该三方库 会安装在根目录的 oh_modules 目录下
安装
cd entry
查看当前ohpm版本
ohpm -v
命令终端输入,安装dayjs三方库
ohpm install dayjs
项目中引用
arkTs 声明式UI
/entry/src/main/ets/pages文件下的.ets文件中使用
import dayjs from 'dayjs'
// 使用
let updateDate:string= dayjs().format('YYYY-MM-DD')
console.log(updateDate)
// 打印结果:2024-05-24