@tdit/public-path

获取静态资源publicPath

Usage no npm install needed!

<script type="module">
  import tditPublicPath from 'https://cdn.skypack.dev/@tdit/public-path';
</script>

README

public-path

准确获取同盾各环境的publicPath

标准publicPath

同盾静态资源标准publicPath类似如下地址:

  {domainName}/static-public/{app}/{bundle}/{version}/

同盾静态资源各个环境

  1. 开发/测试环境(http://static-dev.tongdun.cn/)
  2. 生产CDN(https://portal-static.tongdun.cn/)
  3. 生产static(https://static.tongdun.cn/)
  4. 沙盒(https://statictest.tongdun.cn/)

使用方法

  getPublicPath(options?)

接收options参数可选项

  • env: 默认dev, 可选 cdn(上产cdn)/static(生产static)/test(沙盒)
  • app, 应用名,默认取package.json中name字段
  • bundle, 模块名, 默认 default
  • version, 版本号, 默认取package.json中version字段

示例

示例package.json如下:

  {
    name: "test",
    version: "1.0.0"
  }

生成如下:

  const getPublicPath = require('@td/public-path');

  // 构建配置
  {
    // 获取开发环境publicPath
    // http://static-dev.tongdun.cn/static-public/test/default/1.0.0
    publicPath: getPublicPath(),

    // 获取生产环境publicPath
    // https://portal-static.tongdun.cn/static-public/test/default/1.0.0
    publicPath: getPublicPath({
      env: 'cdn'
    }),

    // 自定义参数
    // https://portal-static.tongdun.cn/static-public/foo/bar/2.0.0
    publicPath: getPublicPath({
      env: 'cdn',
      app: 'foo',
      bundle: 'bar',
      version: '2.0.0'
    }),
  }

注意

开发环境下(process.env.NODE_ENV==='development'), 通过该包获取的publicPath永远为'/'