0.0.8-alpha.0 • Published 2 years ago

spm-fe v0.0.8-alpha.0

Weekly downloads
-
License
MIT
Repository
-
Last release
2 years ago

Spm

import React from 'react';
import { render } from 'react-dom';
import { BrowserRouter as Router, Switch, Route, Link } from 'react-router-dom';
import Spm from '../src/index';

new Spm({
  appType: 'aiSearch',
  onEventListener: (data, type) => {
    console.log(type, data)
  }
})

const Home = () => {
  return (
    <div data-spm-page="test-page-home" page-spm-url="/">
      <div data-spm-pagesize="10" page-spm-url2="12334453545" data-spm-pageno="1" data-spm-query="撒个娇">
        <div data-spm-module="test-module" data-spm-index="2">
          Home
          <Link data-spm-event="test-event-/readme" to='/readme'>切换路由</Link>
        </div>
      </div>
    </div>
  )
}

const Readme = () => {
  return (
    <div data-spm-page="test-page-readme" page-spm-url="/readme">
      <div data-spm-pagesize="10" page-spm-url2="12334453545" data-spm-pageno="1" data-spm-query="撒个娇">
        <div data-spm-module="test-module" data-spm-index="2">
          Readme
          <Link data-spm-event="test-event-/" to='/'>切换路由</Link>
        </div>
      </div>
    </div>
  )
}
const App = () => {
  return (
    <Router>
      <Switch>
        <Route key="readme" path="/readme" exact component={Readme} />
        <Route key="home" path="/" component={Home} />
      </Switch>
    </Router>
  );
};

render(
  <App />,
  document.getElementById('Test'),
);

API

参数类型说明必填默认值
appTypestring应用名称-
pageSpmNamestring页面埋点命名'data-spm-page'
moduleSpmNamestring模块埋点命名'data-spm-module'
eventSpmNamestring事件埋点命名'data-spm-event'
pageSessionNamestring页面埋点在缓存中的名称'spmPage'
moduleSessionNamestring模块埋点在缓存中的名称'spmModule'
eventSessionNamestring事件埋点在缓存中的名称'spmEvent'
fromAppstringurl传参三方应用名称的key'from_app'
fromAppFixbooleanfromApp是否常驻false
headerSpmstringheader埋点参数命名,a.b.c.d'log-spm'
onEventListenerFunction(data: 埋点数据, type: (Listener Types)) => void事件监听触发-
listenerEventsstring[]页面中需要监听的事件'click', 'keyup'
isHashboolean是否hash路由false
onLoadTimeMaxnumber页面onLoad时间上限,超过上限获取页面加载时埋点会失败,单位:毫秒5000
onErrorFunction(errMsg: string, type: (Listener Types)) => void监听触发失败回调-

Listener Types

类型名称说明
pageLoad页面刷新或切换
event:${eventName}(如: event:click)触发埋点事件
initiative主动探针触发
0.0.8-alpha.0

2 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.6

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago