70 lines
2.2 KiB
JavaScript
70 lines
2.2 KiB
JavaScript
|
|
async function createApp() {
|
|
for (let i = 0; i < 10; i++) {
|
|
|
|
try {
|
|
window.$dbSheet = {};
|
|
// set dbsheet app 属性 为 WPSOpenApi.Application;
|
|
window.$dbSheet.app = WPSOpenApi.Application;
|
|
|
|
$dbSheet.createRecords = () => {
|
|
const records = $dbSheet.app.Record.CreateRecords({
|
|
SheetId: 1,
|
|
Records: [{ fields: { "名称": "demo", "数量": 1, "日期": "2022/1/1", "状态": "未开始" } }]
|
|
});
|
|
}
|
|
|
|
$dbSheet.deleteRecords = async () => {
|
|
|
|
const records = await $dbSheet.app.Record.GetRecords({ SheetId: 1 })
|
|
const deleteRcecordId = records.records[0].id
|
|
const result = $dbSheet.app.Record.DeleteRecords({
|
|
SheetId: 1,
|
|
RecordIds: [deleteRcecordId]
|
|
})
|
|
}
|
|
console.log(i);
|
|
} catch (error) {
|
|
// sleep 1s
|
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
console.log(i, error);
|
|
}
|
|
}
|
|
}
|
|
|
|
// 异步执行 createApp
|
|
|
|
createApp().then(() => { });
|
|
|
|
window.addEventListener('message', (event) => {
|
|
if (event.source === window && event.data.func === 'addRecord') {
|
|
// console.log('[Demo] receive', event.data);
|
|
addRecordOnMessage();
|
|
}
|
|
|
|
if (event.source === window && event.data.func === 'deleteRecord') {
|
|
// console.log('[Demo] receive', event.data);
|
|
deleteRecordOnMessage();
|
|
}
|
|
});
|
|
|
|
|
|
async function addRecordOnMessage() {
|
|
$dbSheet.createRecords();
|
|
window.postMessage({ msg: 'add record by inject script', from: 'inject-script' });
|
|
}
|
|
|
|
|
|
async function deleteRecordOnMessage() {
|
|
await $dbSheet.deleteRecords();
|
|
window.postMessage({ msg: 'delete record by inject script', from: 'inject-script' });
|
|
}
|
|
|
|
|
|
async function sendMsgToContentScript() {
|
|
console.log('[Demo] ==============================================');
|
|
console.log('[Demo] Test send message from inject script to content script');
|
|
$dbSheet.createRecords();
|
|
window.postMessage({ msg: 'ping from inject script', from: 'inject-script' });
|
|
}
|