npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

yxzq-utils-browser

v1.3.2

Published

yxzq-utils-browser

Downloads

390

Readme

yxzq-utils-browser

yxzq-utils-browser 是一个工具库,支持在前端读取文件并直接上传,方便处理静态资源管理。

目录

安装

npm install yxzq-utils-browser

使用

原生js使用示例

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>example</title>
</head>

<body>
    <input type="file" class="file-input">
    <script type="module" src="your-path-to-node_modules/yxzq-utils-browser/dist/dist-umd/index.js"></script>
    <script type="module">
        const input = document.querySelector('.file-input')
        input.addEventListener('change', (e) => {
            const file = e.target.files[0]
            yxzqUtils.uploadResource(file).then(res => {
                console.log(res)
            })
        })
        
    </script>
</body>

</html>

JavaScript 示例

import { uploadResource } from 'yxzq-utils';

const up = (e) => {
    if (e.target.files) {
        const file = e.target.files[0];
        uploadResource(file, {
            fileName: 'default',        // 储存的文件名,默认值为 'default'
            folderName: 'default_name', // 储存的目录位置,默认值为 'default_name'
            url: 'http://localhost:3100', // 服务器地址,默认值为 'http://localhost:3100'
            useDate: 'yes',            // 是否使用时间戳作为文件名的一部分,默认值为 'yes'
            ext: 'jpg'                 // 文件后缀名,默认值为 'jpg'
        });
    }
};

up();

TypeScript 示例

import { uploadResource } from 'yxzq-utils';

const up = (e: Event) => {
    const target = e.target as HTMLInputElement;
    if (target.files) {
        const file = target.files[0];
        uploadResource(file, {
            fileName: 'default',        // 储存的文件名,默认值为 'default'
            folderName: 'default_name', // 储存的目录位置,默认值为 'default_name'
            url: 'http://localhost:3100', // 服务器地址,默认值为 'http://localhost:3100'
            useDate: 'yes',            // 是否使用时间戳作为文件名的一部分,默认值为 'yes'
            ext: 'jpg'                 // 文件后缀名,默认值为 'jpg'
        });
    }
};

up();

CommonJS 支持

const { uploadResource } = require('yxzq-utils');

返回值

调用 uploadResource 会返回一个 Promise,解析后的结果如下:

{
    message: 'File uploaded successfully!' | 'File uploaded unsuccessfully!' | 'File does not exist!',
    filePath: url | null, // 文件路径(成功时)或 null(失败时)
    code: 200 | 500,      // HTTP 状态码
    error?: error.message // 错误信息(仅在失败时返回)
}

使用介绍

  • 当前工具支持以下 2 种文件类型:
    • File
    • Blob
  • 可以上传图片以及其他静态资源。

后端工具

如果需要在 Node.js 后端环境中使用,请参考另一个工具 yxzq-utils-node

搭配工具

使用此工具时,可以结合作者的另一个工具 resource-storage


如有任何问题,欢迎提交 Issue 或 PR!