Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#213 text copy feature #231

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 44 additions & 0 deletions library_fdddf_copy/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# 复制文本组件库

**依赖库设计**

这个依赖库旨在提供一个复制文本的方法

**主要特性**

- **组件一/逻辑一:** 提供复制文本方法。

## copyText


**特性 1:** 支持复制文本


...

## 使用说明

### 组件(组件名)

- **attrs**
n/a

- **methods**
n/a

- **events**
n/a

### 逻辑(逻辑名)

- **copyText(text):**

复制文本

## 应用演示链接

[示例演示链接](https://dev-testdiff-qa.app.codewave.163.com/dashboard/copytest)

![img](Snipaste_2024-09-09_01-10-40.jpg)


fdddf marked this conversation as resolved.
Show resolved Hide resolved
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions library_fdddf_copy/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import UtilsLogics from './logics';
// COMPONENT IMPORTS
export {
UtilsLogics,
// COMPONENT EXPORTS
};
5 changes: 5 additions & 0 deletions library_fdddf_copy/logics/copyText/api.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
- name: copyText
description: 复制文本
type: both
belong: logic
labels: [Runtime]
19 changes: 19 additions & 0 deletions library_fdddf_copy/logics/copyText/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
/**
* @param {string} text <true> 需要复制的文本
* @returns
*/
export default (text)=>{
if (navigator.clipboard) {
navigator.clipboard.writeText(text);
fdddf marked this conversation as resolved.
Show resolved Hide resolved
} else {
var textarea = document.createElement('textarea');
fdddf marked this conversation as resolved.
Show resolved Hide resolved
document.body.appendChild(textarea);
textarea.style.position = 'fixed';
textarea.style.clip = 'rect(0 0 0 0)';
fdddf marked this conversation as resolved.
Show resolved Hide resolved
textarea.style.top = '10px';
textarea.value = text;
textarea.select();
document.execCommand('copy', true);
document.body.removeChild(textarea);
}
}
14 changes: 14 additions & 0 deletions library_fdddf_copy/logics/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
const $libraryName = 'library_fdddf_copy'

const UtilsLogics = {}
import copyText from './copyText'
// LOGIC IMPORTS

UtilsLogics.install = function (Vue, option = {}) {
Vue.prototype.$library = Vue.prototype.$library || {}
Vue.prototype.$library[`${$libraryName}`] = {}
Vue.prototype.$library[`${$libraryName}`].copyText=copyText
// LOGIC USE
}

export default UtilsLogics
6 changes: 6 additions & 0 deletions library_fdddf_copy/manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Plugin-Version: 1.0.0
Library-Type: Frontend
Metadata-File: usage.json
packages/extension/[email protected]/dist-theme/demo.html: dist-theme/demo.html
packages/extension/[email protected]/dist-theme/index.js: dist-theme/index.js
packages/extension/[email protected]/dist-theme/index.js.map: dist-theme/index.js.map
Loading
Loading