1
0
mirror of https://gitee.com/bitdance-team/chrome-extension synced 2025-10-07 16:35:15 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
This commit is contained in:
kaz
2022-02-09 23:40:48 +08:00
parent f5de83be34
commit 5d1d2f3348
49 changed files with 211 additions and 544 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,43 @@
new Vue({
el: '#app',
data() {
return {
username: "",
password: ""
}
},
methods: {
login() {
if (!this.username || !this.password) {
alert('账号和密码不能为空!')
return
}
axios.post("https://qcmma8.app.cloudendpoint.cn/api/auth/login", {
username: this.username,
password: this.password
}).then(res => {
window.close()
}).catch(err => {
if (err.response && err.response.data)
alert(err.response.data.msg)
else alert("请求失败!")
})
},
register() {
if (!this.username || !this.password) {
alert('账号和密码不能为空!')
return
}
axios.post("https://qcmma8.app.cloudendpoint.cn/api/auth/register", {
username: this.username,
password: this.password
}).then(res => {
window.close()
}).catch(err => {
if (err.response && err.response.data)
alert(err.response.data.msg)
else alert("请求失败!")
})
}
}
})

View File

@@ -0,0 +1,17 @@
chrome.storage.sync.get('sessionid', function ({ sessionid }) {
if (!sessionid) {
sessionid = uuid.v4()
console.log(sessionid)
chrome.storage.sync.set({
'sessionid': sessionid
});
}
axios.defaults.headers.common['x-tt-session-v2'] = sessionid
if (typeof sessionCb === 'function') {
sessionCb()
}
})

View File

@@ -0,0 +1,42 @@
let app = new Vue({
data() {
return {
todos: [],
todoForm: "",
}
},
methods: {
loadTodos () {
axios.get("https://qcmma8.app.cloudendpoint.cn/api/memos?pageSize=100").then(res => {
this.todos = res.data.content
})
},
createTodo () {
if (!this.toDoForm.trim()) {
alert('内容不能为空')
return
}
axios.post("https://qcmma8.app.cloudendpoint.cn/api/memos", { content: this.toDoForm }).then(() => {
alert('添加成功!')
this.loadTodos()
this.toDoForm = ""
})
},
removeTodo(id) {
axios.delete(`https://qcmma8.app.cloudendpoint.cn/api/memos/${id}`, {
content: this.toDoForm
}).then(() => {
alert('删除成功!')
this.loadTodos()
})
},
},
mounted () {
this.loadTodos()
}
})
function sessionCb() {
app.$mount('#app')
}

View File

@@ -0,0 +1,25 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="app">
<div>账号:<input type="text" v-model="username" /></div>
<div>密码:<input type="password" v-model="password" /></div>
<div><button @click="login">登录</button></div>
</div>
<script src="./assets/js/lib/vue.js"></script>
<script src="./assets/js/lib/axios.min.js"></script>
<script src="./assets/js/lib/uuid.min.js"></script>
<script src="./assets/js/session.js"></script>
<script src="./assets/js/login.js"></script>
</body>
</html>

View File

@@ -6,6 +6,7 @@
"omnibox": {
"keyword": "ss"
},
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'",
"icons": {
"16": "assets/image/logo.png",
"48": "assets/image/logo.png",
@@ -21,8 +22,7 @@
"assets/html/screenshot/background.js"
]
},
"content_scripts": [
{
"content_scripts": [{
"matches": [
"<all_urls>",
"*://*/*"
@@ -103,6 +103,7 @@
"/assets/image/*",
"/assets/html/screenshot/images/*"
],
"permissions": [
"background",
"contextMenus",

View File

@@ -0,0 +1,25 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="app">
<div>账号:<input type="text" v-model="username" /></div>
<div>密码:<input type="password" v-model="password" /></div>
<div><button @click="register">注册</button></div>
</div>
<script src="./assets/js/lib/vue.js"></script>
<script src="./assets/js/lib/axios.min.js"></script>
<script src="./assets/js/lib/uuid.min.js"></script>
<script src="./assets/js/session.js"></script>
<script src="./assets/js/login.js"></script>
</body>
</html>

View File

@@ -0,0 +1,36 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="app">
<h3>备忘录</h3>
<div v-for="todo in todos" :key="todo._id">
<div>
<a @click="removeTodo(todo._id)">删除</a> &nbsp;
{{content}}
</div>
</div>
<div v-if="todos.length === 0">暂无数据</div>
<div>添加一个 Todo</div>
<div>
<textarea v-model="todoForm"></textarea>
<button @click="createTodo">创建</button>
</div>
</div>
<script src="./assets/js/lib/vue.js"></script>
<script src="./assets/js/lib/axios.min.js"></script>
<script src="./assets/js/lib/uuid.min.js"></script>
<script src="./assets/js/session.js"></script>
<script src="./assets/js/todos.js"></script>
</body>
</html>