适配新版,更新uToolsAPI文档
@ -1,4 +1,4 @@
|
||||
# 程序员手册 V1.0.3
|
||||
# 程序员手册 V1.1.0
|
||||
|
||||
## 简介
|
||||
|
||||
@ -36,6 +36,11 @@
|
||||
|
||||
## 更新
|
||||
|
||||
### v1.1.0
|
||||
|
||||
- 适配新版uTools
|
||||
- 更新`uToolsAPI`里的文档至最新版
|
||||
|
||||
### v1.0.3
|
||||
|
||||
- 增加收藏的功能,调用官方的`收藏`插件进行收藏,手册界面选择文本后按`S`键即可收藏
|
||||
|
@ -1,30 +0,0 @@
|
||||
checkUpdate = () => {
|
||||
let p = window.pluginInfo;
|
||||
if (!utools.db.get(p.version)) {
|
||||
$.get(p.publishPage, data => {
|
||||
var re = new RegExp(`<title>\\[插件\\]\\[${p.pluginName} (.*?)\\](.*?) - 猿料<\\/title>`)
|
||||
data = re.exec(data);
|
||||
let lastVer = data[1],
|
||||
desc = data[2];
|
||||
if (lastVer > p.version) {
|
||||
options = {
|
||||
type: 'info',
|
||||
title: '插件有可用更新',
|
||||
icon: window.logo,
|
||||
cancelId: 1,
|
||||
message: `发现新版本 ${lastVer},是否前往更新?\n更新内容:\n${desc}`,
|
||||
buttons: ['起驾', '朕知道了', '别再烦朕']
|
||||
};
|
||||
window.messageBox(options, index => {
|
||||
if (index == 0) {
|
||||
window.open(p.publishPage)
|
||||
} else if (index == 2) {
|
||||
utools.db.put({ _id: p.version, data: "pass" })
|
||||
}
|
||||
})
|
||||
} else {
|
||||
console.log('当前已是最新版本!');
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
@ -1,88 +0,0 @@
|
||||
<h2 id="事件"> 事件</h2>
|
||||
<p>你可以根据需要事先定义好一些回调函数,uTools会在事件产生时主动调用它们。</p>
|
||||
<h3 id="onPluginReady(callback)">
|
||||
<code>onPluginReady(callback)</code></h3>
|
||||
<blockquote>
|
||||
<p>当插件装载成功,uTools将会主动调用这个方法(生命周期内仅调用一次)。</p>
|
||||
<p>注意:在此方法未被执行前,无法调用其他方法。</p>
|
||||
</blockquote>
|
||||
<h4 id="实例"> 实例</h4>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">onPluginReady</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>
|
||||
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'插件初始化完成'</span><span class="token punctuation">)</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<ul>
|
||||
<li><code>callback</code> Function</li>
|
||||
</ul>
|
||||
<h3 id="onPluginEnter(callback)">
|
||||
<code>onPluginEnter(callback)</code></h3>
|
||||
<blockquote>
|
||||
<p>每当插件从后台进入到前台时,uTools将会主动调用这个方法。</p>
|
||||
</blockquote>
|
||||
<h4 id="实例-2"> 实例</h4>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">onPluginEnter</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token punctuation">{</span>code<span class="token punctuation">,</span> type<span class="token punctuation">,</span> payload<span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>
|
||||
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'用户进入插件'</span><span class="token punctuation">,</span> code<span class="token punctuation">,</span> type<span class="token punctuation">,</span> payload<span class="token punctuation">)</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<ul>
|
||||
<li><code>callback</code> Function
|
||||
<ul>
|
||||
<li><code>Object</code>
|
||||
<ul>
|
||||
<li><code>code</code> String</li>
|
||||
<li><code>type</code> String</li>
|
||||
<li><code>payload</code> String/Object/Array</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h3 id="onPluginOut(callback)">
|
||||
<code>onPluginOut(callback)</code></h3>
|
||||
<blockquote>
|
||||
<p>每当插件从前台进入到后台时,uTools将会主动调用这个方法。</p>
|
||||
</blockquote>
|
||||
<h4 id="实例-3"> 实例</h4>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">onPluginOut</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>
|
||||
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'用户退出插件'</span><span class="token punctuation">)</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<ul>
|
||||
<li><code>callback</code> Function</li>
|
||||
</ul>
|
||||
<h3 id="onPluginDetach(callback)">
|
||||
<code>onPluginDetach(callback)</code></h3>
|
||||
<blockquote>
|
||||
<p>用户对插件进行分离操作时,uTools将会主动调用这个方法。</p>
|
||||
</blockquote>
|
||||
<h4 id="实例-4"> 实例</h4>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">onPluginDetach</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>
|
||||
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'插件被分离'</span><span class="token punctuation">)</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<ul>
|
||||
<li><code>callback</code> Function</li>
|
||||
</ul>
|
||||
<h3 id="onDbPull(callback)">
|
||||
<code>onDbPull(callback)</code></h3>
|
||||
<blockquote>
|
||||
<p>当此插件的数据在其他设备上被更改后同步到此设备时,uTools将会主动调用这个方法(必须在插件可视的情况下才会触发)</p>
|
||||
</blockquote>
|
||||
<h4 id="实例-5"> 实例</h4>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">onDbPull</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>
|
||||
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'onDbPull'</span><span class="token punctuation">)</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<ul>
|
||||
<li><code>callback</code> Function</li>
|
||||
</ul>
|
@ -1,50 +0,0 @@
|
||||
<h2 id="其他"> 其他</h2>
|
||||
<h3 id="isHadPrivilege"> isHadPrivilege</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>该方法只适用于在<code>macOS</code>下执行,用于判断uTools是否拥有辅助权限,如果没有可以调用API方法<code>requestPrivilege</code>请求</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">isHadPrivilege</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="requestPrivilege">
|
||||
requestPrivilege</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>该方法只适用于在<code>macOS</code>下执行,该方法调用后会弹出窗口向用户申请辅助权限。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">requestPrivilege</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="getPath"> getPath</h3>
|
||||
<ul>
|
||||
<li><code>name</code> String</li>
|
||||
<li><code>返回</code> String</li>
|
||||
</ul>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">getPath</span><span class="token punctuation">(</span><span class="token string">'temp'</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<p>你可以通过名称请求以下的路径:</p>
|
||||
<ul>
|
||||
<li><code>home</code> 用户的 home 文件夹(主目录)</li>
|
||||
<li><code>appData</code> 当前用户的应用数据文件夹,默认对应:
|
||||
<ul>
|
||||
<li><code>%APPDATA%</code> Windows 中</li>
|
||||
<li><code>~/Library/Application Support</code> macOS 中</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><code>userData</code> 储存你应用程序设置文件的文件夹,默认是 appData 文件夹附加应用的名称</li>
|
||||
<li><code>temp</code> 临时文件夹</li>
|
||||
<li><code>exe</code> 当前的可执行文件</li>
|
||||
<li><code>desktop</code> 当前用户的桌面文件夹</li>
|
||||
<li><code>documents</code> 用户文档目录的路径</li>
|
||||
<li><code>downloads</code> 用户下载目录的路径</li>
|
||||
<li><code>music</code> 用户音乐目录的路径</li>
|
||||
<li><code>pictures</code> 用户图片目录的路径</li>
|
||||
<li><code>videos</code> 用户视频目录的路径</li>
|
||||
<li><code>logs</code> 应用程序的日志文件夹</li>
|
||||
</ul>
|
||||
</div>
|
@ -1,39 +0,0 @@
|
||||
<h2 id="动态增减功能"> 动态增减功能</h2>
|
||||
<p>很多时候,插件中会提供一些功能供用户进行个性化设置(例如:<code>网页快开</code>插件),这部分配置无法在<code>plugin.json</code>事先定义好,所以我们提供了以下方法对插件功能进行动态增减。
|
||||
</p>
|
||||
<h3 id="getFeatures"> getFeatures</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Array</li>
|
||||
</ul>
|
||||
<p>返回本插件所有动态增加的功能。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code><span class="token keyword">const</span> features <span class="token operator">=</span> utools<span class="token punctuation">.</span><span class="token function">getFeatures</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
|
||||
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>features<span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="setFeature"> setFeature</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>为本插件动态新增某个功能。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code><span class="token keyword">const</span> featureConf <span class="token operator">=</span> <span class="token punctuation">{</span>
|
||||
<span class="token string">"code"</span><span class="token punctuation">:</span> <span class="token string">"hosts"</span><span class="token punctuation">,</span>
|
||||
<span class="token string">"explain"</span><span class="token punctuation">:</span> <span class="token string">"hosts切换"</span><span class="token punctuation">,</span>
|
||||
<span class="token string">"cmds"</span><span class="token punctuation">:</span><span class="token punctuation">[</span><span class="token string">"hosts"</span><span class="token punctuation">]</span>
|
||||
<span class="token punctuation">}</span>
|
||||
utools<span class="token punctuation">.</span><span class="token function">setFeature</span><span class="token punctuation">(</span>featureConf<span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<blockquote>
|
||||
<p>featrureConf 格式与<code>plugin.json</code>中配置的格式一致</p>
|
||||
</blockquote>
|
||||
<h3 id="removeFeature"> removeFeature</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>动态删除本插件的某个功能。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">removeFeature</span><span class="token punctuation">(</span>featureCode<span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
@ -1,115 +0,0 @@
|
||||
<h2 id="数据库-db"> 数据库(db)</h2>
|
||||
<p>传统的B/S结构的程序中,除了前端的开发之外,可能还需要有一台服务器、一门后端语言和一个数据库来处理和存储用户数据,这会带来很大的维护成本和可用性的问题。</p>
|
||||
<p>uTools的很多插件就像是一个微型的应用程序,总是会碰到一些数据需要持久化存储的场景,为了解决这个问题,我们整合并提供了一个nosql数据库系统,它可以很方便的使用,并在多个设备之间实现秒级同步。</p>
|
||||
<h3 id="utools.db.put(Object)<">
|
||||
utools.db.put(Object)</h3>
|
||||
<ul>
|
||||
<li><code>doc</code> Object</li>
|
||||
<li><code>返回</code> Object</li>
|
||||
</ul>
|
||||
<p>执行该方法将会创建或更新数据库文档</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code><span class="token comment">// 创建请求</span>
|
||||
utools<span class="token punctuation">.</span>db<span class="token punctuation">.</span><span class="token function">put</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
|
||||
_id<span class="token punctuation">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span>
|
||||
data<span class="token punctuation">:</span> <span class="token string">"demo"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">)</span>
|
||||
<span class="token comment">// 返回</span>
|
||||
<span class="token punctuation">{</span>id<span class="token punctuation">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span> ok<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> rev<span class="token punctuation">:</span> <span class="token string">"1-05c9b92e6f24287dc1f4ec79d9a34fa8"</span><span class="token punctuation">}</span>
|
||||
|
||||
|
||||
<span class="token comment">// 更新请求</span>
|
||||
utools<span class="token punctuation">.</span>db<span class="token punctuation">.</span><span class="token function">put</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
|
||||
_id<span class="token punctuation">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span>
|
||||
data<span class="token punctuation">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span>
|
||||
_rev<span class="token punctuation">:</span> <span class="token string">"1-05c9b92e6f24287dc1f4ec79d9a34fa8"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<p><code>_id</code>代表这个文档在数据库中唯一值,如果值不存在,则会创建一个新的文档,如果值已经存在,则会进行更新。你可能已经注意到,返回对象中包含一个<code>rev</code>属性,这是代表此文档的版本,每次对文档进行更新时,都要带上最新的版本号,否则更新将失败。
|
||||
</p>
|
||||
<p>另外需要注意,每次更新时都要传入完整的文档数据,无法对单个字段进行更新。</p>
|
||||
<h3 id="utools.db.get(string)">
|
||||
utools.db.get(string)</h3>
|
||||
<ul>
|
||||
<li><code>id</code> String</li>
|
||||
<li><code>返回</code> Object</li>
|
||||
</ul>
|
||||
<p>执行该方法将会根据文档ID获取数据</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code><span class="token comment">// 请求</span>
|
||||
utools<span class="token punctuation">.</span>db<span class="token punctuation">.</span><span class="token keyword">get</span><span class="token punctuation">(</span><span class="token string">"demo"</span><span class="token punctuation">)</span>
|
||||
<span class="token comment">// 返回</span>
|
||||
<span class="token punctuation">{</span>_id<span class="token punctuation">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span> _rev<span class="token punctuation">:</span> <span class="token string">"3-9836c5c68af5aef618e17d615882942a"</span><span class="token punctuation">,</span> data<span class="token punctuation">:</span> <span class="token string">"demo"</span><span class="token punctuation">}</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="utools.db.remove(string | Object)"> utools.db.remove(string | Object)</h3>
|
||||
<ul>
|
||||
<li><code>id</code> String | Object</li>
|
||||
<li><code>返回</code> Object</li>
|
||||
</ul>
|
||||
<p>执行该方法将会删除数据库文档,可以传入文档对象或文档id进行操作。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code><span class="token comment">// 请求</span>
|
||||
utools<span class="token punctuation">.</span>db<span class="token punctuation">.</span><span class="token function">remove</span><span class="token punctuation">(</span><span class="token string">"demo"</span><span class="token punctuation">)</span>
|
||||
<span class="token comment">// 返回</span>
|
||||
<span class="token punctuation">{</span>id<span class="token punctuation">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span> ok<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> rev<span class="token punctuation">:</span> <span class="token string">"2-effe5dbc23dffc180d8411b23f3108fb"</span><span class="token punctuation">}</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="utools.db.bulkDocs(Array)">
|
||||
utools.db.bulkDocs(Array)</h3>
|
||||
<ul>
|
||||
<li><code>docs</code> Array</li>
|
||||
<li><code>返回</code> Array</li>
|
||||
</ul>
|
||||
<p>执行该方法将会批量更新数据库文档,传入需要更改的文档对象合并成数组进行批量更新。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code><span class="token comment">// 请求</span>
|
||||
utools<span class="token punctuation">.</span>db<span class="token punctuation">.</span><span class="token function">bulkDocs</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">{</span>
|
||||
_id<span class="token punctuation">:</span> <span class="token string">"demo1"</span><span class="token punctuation">,</span>
|
||||
data<span class="token punctuation">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span>
|
||||
_rev<span class="token punctuation">:</span> <span class="token string">"1-c8817a74e292eda4cba1a45924853af6"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
|
||||
_id<span class="token punctuation">:</span> <span class="token string">"demo2"</span><span class="token punctuation">,</span>
|
||||
data<span class="token punctuation">:</span> <span class="token string">"demo"</span><span class="token punctuation">,</span>
|
||||
_rev<span class="token punctuation">:</span> <span class="token string">"1-f0399b42cc6123a9cc8503632ba7b3a7"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">)</span>
|
||||
<span class="token comment">// 返回</span>
|
||||
<span class="token punctuation">[</span><span class="token punctuation">{</span>
|
||||
id<span class="token punctuation">:</span> <span class="token string">"demo1"</span><span class="token punctuation">,</span> ok<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> rev<span class="token punctuation">:</span> <span class="token string">"2-7857b2801bc0303d2cc0bb82e8afd796"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
|
||||
id<span class="token punctuation">:</span> <span class="token string">"demo2"</span><span class="token punctuation">,</span> ok<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> rev<span class="token punctuation">:</span> <span class="token string">"2-7857b2801bc0303d2cc0bb82e8afd796"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">]</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="utools.db.allDocs(String|Array)"> utools.db.allDocs(String|Array)</h3>
|
||||
<ul>
|
||||
<li><code>preKey</code> String | []</li>
|
||||
<li><code>返回</code> Array</li>
|
||||
</ul>
|
||||
<p>执行该方法将会获取所有数据库文档,如果传入字符串,则会返回以字符串开头的文档,也可以传入指定ID的数组,不传入则为获取所有文档。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code><span class="token comment">// 根据preKey请求</span>
|
||||
utools<span class="token punctuation">.</span>db<span class="token punctuation">.</span><span class="token function">allDocs</span><span class="token punctuation">(</span><span class="token string">"demo"</span><span class="token punctuation">)</span>
|
||||
<span class="token comment">// 返回</span>
|
||||
<span class="token punctuation">[</span><span class="token punctuation">{</span>
|
||||
_id<span class="token punctuation">:</span> <span class="token string">"demo/123"</span><span class="token punctuation">,</span> _rev<span class="token punctuation">:</span> <span class="token string">"2-7857b2801bc0303d2cc0bb82e8afd796"</span><span class="token punctuation">,</span> data<span class="token punctuation">:</span> <span class="token string">"demo"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
|
||||
_id<span class="token punctuation">:</span> <span class="token string">"demo/124"</span><span class="token punctuation">,</span> _rev<span class="token punctuation">:</span> <span class="token string">"1-f0399b42cc6123a9cc8503632ba7b3a7"</span><span class="token punctuation">,</span> data<span class="token punctuation">:</span> <span class="token string">"demo"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
|
||||
_id<span class="token punctuation">:</span> <span class="token string">"demo/125"</span><span class="token punctuation">,</span> _rev<span class="token punctuation">:</span> <span class="token string">"1-f0399b42cc6123a9cc8503632ba7b3a7"</span><span class="token punctuation">,</span> data<span class="token punctuation">:</span> <span class="token string">"demo"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">]</span>
|
||||
<span class="token comment">// 根据id数组请求</span>
|
||||
utools<span class="token punctuation">.</span>db<span class="token punctuation">.</span><span class="token function">allDocs</span><span class="token punctuation">(</span><span class="token punctuation">[</span>
|
||||
<span class="token string">"demo1"</span><span class="token punctuation">,</span>
|
||||
<span class="token string">"demo2"</span>
|
||||
<span class="token punctuation">]</span><span class="token punctuation">)</span>
|
||||
<span class="token comment">// 返回</span>
|
||||
<span class="token punctuation">[</span><span class="token punctuation">{</span>
|
||||
_id<span class="token punctuation">:</span> <span class="token string">"demo1"</span><span class="token punctuation">,</span> _rev<span class="token punctuation">:</span> <span class="token string">"2-7857b2801bc0303d2cc0bb82e8afd796"</span><span class="token punctuation">,</span> data<span class="token punctuation">:</span> <span class="token string">"demo"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
|
||||
_id<span class="token punctuation">:</span> <span class="token string">"demo2"</span><span class="token punctuation">,</span> _rev<span class="token punctuation">:</span> <span class="token string">"1-f0399b42cc6123a9cc8503632ba7b3a7"</span><span class="token punctuation">,</span> data<span class="token punctuation">:</span> <span class="token string">"demo"</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">]</span>
|
||||
|
||||
</code></pre>
|
||||
</div>
|
@ -1,93 +0,0 @@
|
||||
<h2 id="窗口管理"> 窗口管理</h2>
|
||||
<h3 id="hideMainWindow"> hideMainWindow</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>执行该方法将会隐藏uTools主窗口,包括此时正在主窗口运行的插件,分离的插件不会被隐藏。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">hideMainWindow</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="showMainWindow"> showMainWindow</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>执行该方法将会显示uTools主窗口,包括此时正在主窗口运行的插件。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">showMainWindow</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="setExpendHeight"> setExpendHeight
|
||||
</h3>
|
||||
<ul>
|
||||
<li><code>height</code> Integer</li>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>执行该方法将会修改插件窗口的高度。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">setExpendHeight</span><span class="token punctuation">(</span><span class="token number">100</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="setSubInput"> setSubInput</h3>
|
||||
<ul>
|
||||
<li><code>onChange</code> Function
|
||||
<ul>
|
||||
<li><code>Object</code>
|
||||
<ul>
|
||||
<li><code>text</code> String</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><code>placeholder</code> String(可选)</li>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>设置子输入框,进入插件后,原本uTools的搜索条主输入框将会变成子输入框,设置完子输入框搜索条子输入框可以为插件所使用。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">setSubInput</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token punctuation">{</span>text<span class="token punctuation">}</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>
|
||||
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>text<span class="token punctuation">)</span>
|
||||
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token string">'网页搜索,回车打开'</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="removeSubInput"> removeSubInput</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>移出先前设置的子输入框,在插件切换到其他页面时可以重新设置子输入框为其所用。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">removeSubInput</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="setSubInputValue">
|
||||
setSubInputValue</h3>
|
||||
<ul>
|
||||
<li><code>value</code> String</li>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>直接对子输入框的值进行设置。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">setSubInputValue</span><span class="token punctuation">(</span><span class="token string">'uTools'</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="outPlugin"> outPlugin</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>执行该方法将会退出当前插件。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">outPlugin</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
|
||||
</code></pre>
|
||||
</div>
|
||||
<h3 id="showNotification">
|
||||
showNotification</h3>
|
||||
<ul>
|
||||
<li><code>返回</code> Boolean</li>
|
||||
</ul>
|
||||
<p>执行该方法将会弹出一个系统通知。</p>
|
||||
<div class="language-js extra-class">
|
||||
<pre class="language-js"><code>utools<span class="token punctuation">.</span><span class="token function">showNotification</span><span class="token punctuation">(</span>body<span class="token punctuation">,</span> clickFeatureCode <span class="token operator">=</span> <span class="token keyword">null</span><span class="token punctuation">,</span> silent <span class="token operator">=</span> <span class="token boolean">true</span><span class="token punctuation">)</span>
|
||||
<span class="token operator">-</span> body 显示的内容
|
||||
<span class="token operator">-</span> clickFeatureCode 用户点击系统通知时,uTools将会使用此<span class="token template-string"><span class="token string">`code`</span></span>进入插件
|
||||
<span class="token operator">-</span> silent 是否播放声音
|
||||
</code></pre>
|
||||
</div>
|
@ -1 +0,0 @@
|
||||
[{"name":"onPluginReady(callback)","type":"事件","path":"utools/事件.html#onPluginReady(callback)","desc":"当插件装载成功,uTools将会主动调用这个方法(生命周期内仅调用一次)"},{"name":"onPluginEnter(callback)","type":"事件","path":"utools/事件.html#onPluginEnter(callback)","desc":"每当插件从后台进入到前台时,uTools将会主动调用这个方法"},{"name":"onPluginOut(callback)","type":"事件","path":"utools/事件.html#onPluginOut(callback)","desc":"每当插件从前台进入到后台时,uTools将会主动调用这个方法"},{"name":"onPluginDetach(callback)","type":"事件","path":"utools/事件.html#onPluginDetach(callback)","desc":"用户对插件进行分离操作时,uTools将会主动调用这个方法"},{"name":"onDbPull(callback)","type":"事件","path":"utools/事件.html#onDbPull(callback)","desc":"当此插件的数据在其他设备上被更改后同步到此设备时,uTools将会主动调用这个方法(必须在插件可视的情况下才会触发)"},{"name":"utools.db.put(Object)","type":"数据库","path":"utools/数据库.html#utools.db.put(Object)","desc":"执行该方法将会创建或更新数据库文档"},{"name":"utools.db.get(string)","type":"数据库","path":"utools/数据库.html#utools.db.get(string)","desc":"执行该方法将会根据文档ID获取数据"},{"name":"utools.db.remove(string | Object)","type":"数据库","path":"utools/数据库.html#utools.db.remove(string | Object)","desc":"执行该方法将会删除数据库文档,可以传入文档对象或文档id进行操作"},{"name":"utools.db.bulkDocs(Array)","type":"数据库","path":"utools/数据库.html#utools.db.bulkDocs(Array)","desc":"执行该方法将会批量更新数据库文档,传入需要更改的文档对象合并成数组进行批量更新"},{"name":"utools.db.allDocs(String|Array)","type":"数据库","path":"utools/数据库.html#utools.db.allDocs(String|Array)","desc":"执行该方法将会获取所有数据库文档,如果传入字符串,则会返回以字符串开头的文档,也可以传入指定ID的数组,不传入则为获取所有文档"},{"name":"hideMainWindow","type":"窗口管理","path":"utools/窗口管理.html#hideMainWindow","desc":"执行该方法将会隐藏uTools主窗口,包括此时正在主窗口运行的插件,分离的插件不会被隐藏"},{"name":"showMainWindow","type":"窗口管理","path":"utools/窗口管理.html#showMainWindow","desc":"执行该方法将会显示uTools主窗口,包括此时正在主窗口运行的插件"},{"name":"setExpendHeight","type":"窗口管理","path":"utools/窗口管理.html#setExpendHeight","desc":"执行该方法将会修改插件窗口的高度"},{"name":"setSubInput","type":"窗口管理","path":"utools/窗口管理.html#setSubInput","desc":"设置子输入框,进入插件后,原本uTools的搜索条主输入框将会变成子输入框,设置完子输入框搜索条子输入框可以为插件所使用"},{"name":"removeSubInput","type":"窗口管理","path":"utools/窗口管理.html#removeSubInput","desc":"移出先前设置的子输入框,在插件切换到其他页面时可以重新设置子输入框为其所用"},{"name":"setSubInputValue","type":"窗口管理","path":"utools/窗口管理.html#setSubInputValue","desc":"直接对子输入框的值进行设置"},{"name":"outPlugin","type":"窗口管理","path":"utools/窗口管理.html#outPlugin","desc":"执行该方法将会退出当前插件"},{"name":"showNotification","type":"窗口管理","path":"utools/窗口管理.html#showNotification","desc":"执行该方法将会弹出一个系统通知"},{"name":"getFeatures","type":"动态增减功能","path":"utools/动态增减功能.html#getFeatures","desc":"很多时候,插件中会提供一些功能供用户进行个性化设置(例如:网页快开插件),这部分配置无法在plugin.json事先定义好,所以我们提供了以下方法对插件功能进行动态增减"},{"name":"setFeature","type":"动态增减功能","path":"utools/动态增减功能.html#setFeature","desc":"返回本插件所有动态增加的功能"},{"name":"removeFeature","type":"动态增减功能","path":"utools/动态增减功能.html#removeFeature","desc":"为本插件动态新增某个功能"},{"name":"isHadPrivilege","type":"其他","path":"utools/其他.html#isHadPrivilege","desc":"该方法只适用于在macOS下执行,用于判断uTools是否拥有辅助权限,如果没有可以调用API方法requestPrivilege请求"},{"name":"requestPrivilege","type":"其他","path":"utools/其他.html#requestPrivilege","desc":"该方法只适用于在macOS下执行,该方法调用后会弹出窗口向用户申请辅助权限"},{"name":"getPath","type":"其他","path":"utools/其他.html#getPath","desc":"返回系统的特殊路径"}]
|
244
src/README.md
Normal file
@ -0,0 +1,244 @@
|
||||
# 程序员手册 V1.1.0
|
||||
|
||||
## 简介
|
||||
|
||||
内置了十多个实用的离线中文手册,包括:Linux、PHP、Python、JS等,以及提供了搜索devdocs、dash/zeal上的文档的功能
|
||||
|
||||
手册具有以下三个特色:
|
||||
|
||||
- 内置多个手册均可离线使用,且90%以上是中文
|
||||
- 可以自行添加手册
|
||||
- 可以查询devdocs、dash/zeal上的文档
|
||||
|
||||
前身是之前发布的两个插件:
|
||||
|
||||
[PHP函数查询助手](https://yuanliao.info/d/329) [Linux命令查询手册](https://yuanliao.info/d/336)
|
||||
|
||||
## 基本操作
|
||||
|
||||
- 列表界面:
|
||||
- 查看选中的内容 `⏎`/`🖱左键`
|
||||
- 发送选中的内容至上一个活动窗口 `⇪ + ⏎`/`🖱中键`
|
||||
- 上下选择 `⇧`/`⇩`
|
||||
- 手册界面:
|
||||
- 切换列表和手册视图 `tab`/`🖱右键`
|
||||
- 发送选中的内容至上一个活动窗口 `⇪ + ⏎`/`🖱中键`
|
||||
- 搜索下一个关键词 `⏎`
|
||||
- 选中文本后翻译 `T`
|
||||
- 选中文本后收藏 `S`
|
||||
- 退出插件 `esc`
|
||||
|
||||
## 关键字
|
||||
|
||||
- `手册设置`/`ManualOptions` : 调整程序员手册的功能
|
||||
- `dash`/`zeal` :打开dash 或 zeal 进行搜索
|
||||
- `linux命令` `php函数` `python库` `C函数` `vim命令` `git命令` `docker命令` `sql手册` `uToolsAPI` 等
|
||||
|
||||
## 更新
|
||||
|
||||
### v1.1.0
|
||||
|
||||
- 适配新版uTools
|
||||
- 更新`uToolsAPI`里的文档至最新版
|
||||
|
||||
### v1.0.3
|
||||
|
||||
- 增加收藏的功能,调用官方的`收藏`插件进行收藏,手册界面选择文本后按`S`键即可收藏
|
||||
|
||||
- 调整划词翻译功能的UI
|
||||
|
||||
- 更新列表界面和手册界面子输入框内的说明,提示各个快捷键的功能
|
||||
|
||||
- 修复一个BUG,该BUG会导致第一次载入插件时无法调用`dash`或`zeal`的文档,以及在设置手册时搜索关键字后无法跳转
|
||||
|
||||

|
||||
|
||||
### v1.0.2
|
||||
|
||||
- 增加划词翻译的功能,调用有道的英译中的接口。手册界面选中文本后按`T`键即可翻译
|
||||
|
||||
### v1.0.1
|
||||
|
||||
- 一些bug修复、、
|
||||
|
||||
### v1.0.0
|
||||
|
||||
- 上架 uTools 插件商店,算是正式版了,去除了内置的插件更新提示
|
||||
- 修复两个滚动事件引起的BUG
|
||||
- (~~似乎~~)修复了mac下退出后再次进入无法触发鼠标单击事件的BUG
|
||||
- 修复`payload.json`文件会被某些杀毒软件误报的情况,现在已做加密处理
|
||||
|
||||
### v0.0.4
|
||||
|
||||
抱歉由于这段时间私事太多,插件疏于更新。感谢@Xinu在插件无法使用的时候帮忙发布了修复版本。
|
||||
|
||||
- 修复了uTools更新后进入插件空白的BUG
|
||||
- 添加Linux支持
|
||||
- 修复了退出手册后再次进入无法搜索的BUG,但是MacOS下任然存在一个诡异的BUG,退出后再次进入无法触发鼠标单击事件,建议勾选**隐藏即完全退出**选项,windows不受影响
|
||||
- 修复了添加外置手册时使用多关键词会出现问题的BUG
|
||||
- 现在外置的Java手册有图标了
|
||||
|
||||
### v0.0.3
|
||||
|
||||
又有一大波更新来袭
|
||||
|
||||
先做一个名词解释,本文中所提及的
|
||||
|
||||
**手册界面**为:
|
||||
|
||||

|
||||
|
||||
**列表界面**为:
|
||||
|
||||

|
||||
|
||||
|
||||
##### 功能更新
|
||||
|
||||
- 添加了快速将内容发送至活动窗口的功能,在列表界面按`shift+enter`或鼠标中键即可将选中的函数名称发送至上一个系统的活动窗口,在手册界面,选中相关文本内容后,按`shift+enter`或鼠标中键即可发送。查完api后再也不用慢悠悠地手动复制函数了~~
|
||||
|
||||
- 集成了`devdocs`,在`手册设置`页面,点击下方的英文手册按钮即可进入`devdocs`的配置页面
|
||||
|
||||

|
||||
|
||||
需要先在该页面点击下载按钮下载相应的文档目录,之后便可和内置手册一样使用
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
需要注意的是`devdocs`所有文档的`api`列表中均无中文注释,且只有目录文件是离线存储的,访问具体的手册页面需要联网
|
||||
|
||||
- 现在`手册设置`页面可以在顶端输入框内搜索快速查找需要的文档
|
||||
|
||||
- 添加快速启动`dash`或者`zeal`的功能,通过关键字`dash`即可进入
|
||||
|
||||

|
||||
|
||||
注意,不同于`devdocs`,最后会根据查询内容调用`dash`或者`zeal`进行查看,故需要先安装`dash`或者`zeal`才可以使用此功能
|
||||
|
||||
- 添加了多关键词查找的功能,现在想怎么搜就怎么搜~
|
||||
|
||||

|
||||
|
||||
- 添加了一个内置手册`PyQt5`,同时在内置的`python`手册中添加了多个`tkinter`的实例
|
||||
|
||||
添加了一个内置手册`payload`,收录了一些网络安全测试的常用`payload`,没有手册页面,主要配合新出的发送文本到窗口的功能,实现快速输入`payload`,目前收录的比较少,后续会陆续补充
|
||||
|
||||
|
||||

|
||||
|
||||
- 增加外置手册时,如需自定义`css`,不再是添加单个`css`文件,而是统一放入`assets`目录中,相关外置手册说明同步更新
|
||||
|
||||
##### 用户体验改善
|
||||
|
||||
- 当在列表界面进行搜索后,点击进入手册界面,会清空顶端输入框内的值
|
||||
- 在某些情况下(例如读取外置手册失败时)会输出一些报错信息
|
||||
|
||||
##### bug修复
|
||||
|
||||
- 修复了添加外置手册后滚动条没有调整的bug,以及某些时候滚动条未自动调整的bug
|
||||
- 修复检测更新功能中,即使点了不再提醒,下次重启`uTools`时仍会再次出现的bug
|
||||
|
||||
##### 本项目现已在Github开源,地址见下载一栏,欢迎提交pr,大家一同完善本项目,如果喜欢也请不吝star~
|
||||
|
||||
### v0.0.2
|
||||
|
||||
##### 功能更新
|
||||
|
||||
- 增加外置手册的功能,需要有一定的编写爬虫脚本的能力,详情[戳我](https://yuanliao.info/d/356/27)
|
||||

|
||||

|
||||
- 增加了三个内置手册`javascript`,`jQuery`,`vue`,一个外置手册`Java`。由于`Java`体积太大(目录10M,手册100M+),会使整个插件体积暴增,故采取外置形式,同时也作为外置手册的一个案例作为参考。
|
||||
- 增加了版本检测的功能,当有新版本时会弹窗提示
|
||||

|
||||
- 在设置页面增加了两个功能键`全部启用`和`全部禁用`
|
||||
|
||||
##### 用户体验改善
|
||||
|
||||
- 优化搜索结果的排序,现在的排序规则是,置顶全字匹配的内容,优先显示名称匹配的内容,其次显示描述匹配的内容
|
||||

|
||||
- 滚动条样式调整,现在滚动条会自动隐藏,并在滚动时和鼠标移至滚动条位置时出现
|
||||
- 设置页面的开关样式调整,现在开关的状态更加清晰明了
|
||||
- linux、C等语言的手册现在支持语法高亮了
|
||||
- 其他一些界面微调
|
||||
|
||||
##### BUG修复
|
||||
|
||||
- 修复了第一次进入插件时、列表更新时、方向键选择列表时,鼠标所在位置会被选中的BUG
|
||||
- 修复了方向键进行列表选择时,没有到最后一行就向下滚动的BUG
|
||||
|
||||
### v0.0.1
|
||||
|
||||
相较于之前两版,做了比较大的更新:
|
||||
|
||||
- 整合所有手册到一个插件当中,现在有多达**九个**语言或工具的手册
|
||||
- 添加了一个配置页面,可以选择需要启动的功能(注:默认情况下所有手册均未启用,需要先通过`手册设置`命令进行配置)
|
||||

|
||||
|
||||
|
||||
- 支持直接在`uTools`主输入框进行快速搜索查询(或复制文本后5s内呼出`uTools`),可在配置页面选择开启
|
||||

|
||||
|
||||
- 子输入框功能增强。
|
||||
|
||||
在**列表界面**用来搜索函数/命令,并高亮匹配文本
|
||||

|
||||
|
||||
在**手册界面**则可以进行当前文档内容的搜索(回车键跳转到匹配文本位置)
|
||||

|
||||
|
||||
- 添加了一个快捷键`TAB`,以在列表界面和手册界面之间进行切换
|
||||
|
||||
- 现在支持点击手册里的外部链接跳转到相应网址(通过默认浏览器打开,之前并不支持,不知道你们发现没~~)
|
||||
|
||||
- 界面微调
|
||||
|
||||
- 一些BUG修复
|
||||
|
||||
## 其他预览
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
## 安装
|
||||
|
||||
请直接在插件中心进行安装即可,或将本项目打包成`upx`安装
|
||||
|
||||
[项目地址](https://github.com/fofolee/uTools-Manuals)
|
||||
|
||||
[插件发布页](https://yuanliao.info/d/356)
|
||||
|
||||
[外置手册教程](https://yuanliao.info/d/356/27)
|
||||
|
||||
|
||||
## 手册一览
|
||||
|
||||
所有手册资源均来自网络,如有遗漏,请留言告知
|
||||
|
||||
- php手册 | [官方中文文档](https://www.php.net/download-docs.php)
|
||||
- linux手册 | [离线手册:linux-command@jaywcjlove](https://github.com/jaywcjlove/linux-command) [原始数据:linuxde.net](http://man.linuxde.net/)
|
||||
- python手册 | [官方文档一译翻译版](https://yiyibooks.cn/xx/python_352/library/index.html)
|
||||
- beautifulSoup | [官方中文文档](https://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html)
|
||||
- requests | [官方中文文档](https://2.python-requests.org//zh_CN/latest/user/quickstart.html)
|
||||
- scrapy | [scrapy入门教程中文翻译](https://github.com/marchtea/scrapy_doc_chs)
|
||||
- pillow | [pillow官方文档中文翻译](https://pillow-cn.readthedocs.io/zh_CN/latest/)
|
||||
- tkinter | [易学教程](https://www.e-learn.cn/content/python/1101684)
|
||||
- PyQt5文档 | [PyQt5中文教程](https://github.com/maicss/PyQt5-Chinese-tutorial)
|
||||
- C函数 | C语言函数速查(Knocker 2004.7.7 版本 0.5)
|
||||
- vim命令 | [awesome-cheatsheets](https://github.com/skywind3000/awesome-cheatsheets/blob/master/editors/vim.txt)
|
||||
- git命令 | [php中文网git开发手册](http://www.php.cn/manual/view/34942.html)
|
||||
- sql手册 | [php中文网sql参考手册](http://www.php.cn/manual/view/21301.html)
|
||||
- uTools API | [uTools官方文档](https://u.tools/docs/developer/api.html)
|
||||
- java | [fondme.cn](https://blog.fondme.cn/apidoc/jdk-1.8-google/)
|
||||
- javascript | [MDN Web Docs](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Index)
|
||||
- jQuery | [jQuery中文网](https://www.jquery123.com/)
|
||||
- vue | [官方中文文档](https://cn.vuejs.org/v2/api/)
|
||||
- payload | 收集自网络
|
||||
- devdocs | [devdocs](https://devdocs.io/)
|
||||
|
@ -225,7 +225,7 @@ $("#options").on('click', '.saveBtn', async function () {
|
||||
var allFts = await getManuals();
|
||||
if (code in allFts && $("#code").prop('disabled') == false) {
|
||||
$('#code').css({ 'border-bottom-color': '#ec1212' })
|
||||
window.messageBox({ type: 'error', icon: window.logo, message: "名称与现有的手册重复!", buttons: ['朕知道了'] })
|
||||
Swal.fire({ icon: 'error', text: '名称与现有的手册重复!!', })
|
||||
} else {
|
||||
var kw = $('#kw').val().split(','),
|
||||
desc = $('#desc').val(),
|
2
src/assets/sweetalert2.all.min.js
vendored
Normal file
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 9.8 KiB |
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 8.6 KiB |
Before Width: | Height: | Size: 6.8 KiB After Width: | Height: | Size: 6.8 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.4 KiB |
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.6 KiB |
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.5 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 9.8 KiB |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 7.9 KiB |
Before Width: | Height: | Size: 5.9 KiB After Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 6.2 KiB After Width: | Height: | Size: 6.2 KiB |
Before Width: | Height: | Size: 5.8 KiB After Width: | Height: | Size: 5.8 KiB |
Before Width: | Height: | Size: 7.8 KiB After Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 5.7 KiB After Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 79 KiB |
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 8.8 KiB |
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
Before Width: | Height: | Size: 7.0 KiB After Width: | Height: | Size: 7.0 KiB |
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 8.2 KiB After Width: | Height: | Size: 8.2 KiB |
Before Width: | Height: | Size: 312 KiB After Width: | Height: | Size: 312 KiB |
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 5.9 KiB After Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 7.7 KiB |
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.6 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 6.5 KiB |
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 3.9 KiB |
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB |