// 註冊一個全局自定義指令 `v-tracking`
Vue.directive("tracking", {
// 只調用一次,指令第一次綁定到元素時調用。
bind: (el, binding) => {
// 給元素綁定事件
el.addEventListener(
"click", _ => {
// 默認參數設置
let def = {
url:'/url',
}
let data = Object.assign(def,binding.value);
//binding.value爲傳入的對象字面量,將其轉爲字符串再經過RSA加密來壓縮埋點內容
console.log(RSA.encrypt(JSON.stringify(data)));
// 發送埋點數據
},
false
);
}
});
複製代碼
<button v-tracking="{ tag: '1', remake:'1' }">按鈕1</button>
<button v-tracking="{ tag: '2', remake:'2' }">按鈕2</button>
複製代碼