Compare commits
2 Commits
Author | SHA1 | Date |
---|---|---|
杨豪 | 27b6c40a4d | 3 years ago |
杨豪 | e942e8634b | 3 years ago |
36 changed files with 1101 additions and 129 deletions
@ -0,0 +1,139 @@
|
||||
var jweixin = require('jweixin-module') |
||||
const userId = uni.getStorageSync('userId'); |
||||
console.log(userId,'userId') |
||||
import HttpRequest from '../common/httpRequest' |
||||
export default { |
||||
//判断是否在微信中
|
||||
isWechat: function () { |
||||
var ua = window.navigator.userAgent.toLowerCase(); |
||||
if (ua.match(/micromessenger/i) == 'micromessenger') { |
||||
// console.log(‘是微信客户端‘)
|
||||
return true; |
||||
} else { |
||||
// console.log(‘不是微信客户端‘)
|
||||
return false; |
||||
} |
||||
}, |
||||
//初始化sdk配置
|
||||
initJssdkShare: function (callback, url) { |
||||
HttpRequest.getT('/appLogin/jsapiInit',{url: url}).then((result)=>{ |
||||
if(result.code == 0){ |
||||
jweixin.config({ |
||||
debug: false, |
||||
appId: result.appId, |
||||
timestamp: result.timestamp, |
||||
nonceStr: result.nonceStr, |
||||
signature: result.signature, |
||||
jsApiList: [ |
||||
'chooseWXPay', |
||||
'checkJsApi', |
||||
'updateTimelineShareData', |
||||
'updateAppMessageShareData', |
||||
'getLocation' |
||||
] |
||||
}); |
||||
if (callback) { |
||||
callback(result); |
||||
} |
||||
} |
||||
}) |
||||
}, |
||||
share: function (data, url) { |
||||
url = url ? url : window.location.href; |
||||
console.log("url:" + url) |
||||
if (!this.isWechat()) { |
||||
uni.showToast({ |
||||
title: '不在微信客户端', |
||||
icon: 'none' |
||||
}) |
||||
return; |
||||
} |
||||
//每次都需要重新初始化配置,才可以进行分享
|
||||
this.initJssdkShare(function (signData) { |
||||
jweixin.ready(function () { |
||||
var shareData = { |
||||
title: data && data.title ? data.title : signData.site_name, |
||||
desc: data && data.desc ? data.desc : signData.site_description, |
||||
link: url, |
||||
imgUrl: data && data.img ? data.img : signData.site_logo, |
||||
success: function (res) { |
||||
// 分享后的一些操作,比如分享统计等等
|
||||
}, |
||||
cancel: function (res) {} |
||||
}; |
||||
//分享给朋友接口
|
||||
jweixin.updateAppMessageShareData(shareData); |
||||
//分享到朋友圈接口
|
||||
// jweixin.updateTimelineShareData(shareData);
|
||||
}); |
||||
}, url) |
||||
}, |
||||
wxChatWebPay: function (url) { |
||||
if (!this.isWechat()) { |
||||
uni.showToast({ |
||||
title: '不在微信客户端', |
||||
icon: 'none' |
||||
}) |
||||
return; |
||||
} |
||||
return new Promise((resolve,reject)=>{ |
||||
//每次都需要重新初始化配置
|
||||
this.initJssdkShare(function () { |
||||
jweixin.ready(function () { |
||||
HttpRequest.postT('/api/order/wxPayMember?userId=' + userId + '&type=3').then((orderInfo)=>{ |
||||
jweixin.chooseWXPay({ |
||||
nonceStr: orderInfo.noncestr, |
||||
timestamp: orderInfo.timestamp, |
||||
package: orderInfo.package, |
||||
signType: orderInfo.signType, |
||||
paySign: orderInfo.sign, |
||||
success: (res) => { |
||||
console.log('支付成功') |
||||
resolve(res) |
||||
}, |
||||
fail: (res)=> { |
||||
reject(res) |
||||
console.log('支付失败') |
||||
}, |
||||
cancel: (res)=> { |
||||
resolve(res) |
||||
console.log('取消支付') |
||||
} |
||||
}) |
||||
}) |
||||
|
||||
}); |
||||
},url) |
||||
}) |
||||
}, |
||||
wxGetLocation: function(url){ |
||||
return new Promise((resolve,reject)=>{ |
||||
if (!this.isWechat()) { |
||||
uni.showModal({ |
||||
title: '提示!', |
||||
content: '请在微信客户端内打开', |
||||
showCancel: false |
||||
}) |
||||
uni.hideLoading() |
||||
return |
||||
reject(res) |
||||
} |
||||
//每次都需要重新初始化配置
|
||||
this.initJssdkShare(function () { |
||||
jweixin.ready(function () { |
||||
jweixin.getLocation({ |
||||
type: 'wgs84', |
||||
success: function (res) { |
||||
console.log('jssdk获取的位置:',res.longitude,res.latitude) |
||||
resolve(res) |
||||
}, |
||||
cancel: function (res) { |
||||
reject(res) |
||||
alert('您已禁止获取位置信息') |
||||
} |
||||
}); |
||||
}); |
||||
},url) |
||||
}) |
||||
} |
||||
} |
@ -0,0 +1,27 @@
|
||||
export default { |
||||
data() { |
||||
return { |
||||
disabled: false, |
||||
text: "获取验证码" |
||||
}; |
||||
}, |
||||
methods: { |
||||
sendCode() { |
||||
if (this.disabled) return; |
||||
this.disabled = true; |
||||
let n = 60; |
||||
this.text = "剩余 " + n + "s"; |
||||
const run = setInterval(() => { |
||||
n = n - 1; |
||||
if (n < 0) { |
||||
clearInterval(run); |
||||
} |
||||
this.text = "剩余 " + n + "s"; |
||||
if (this.text < "剩余 " + 0 + "s") { |
||||
this.disabled = false; |
||||
this.text = "重新获取"; |
||||
} |
||||
}, 1000); |
||||
} |
||||
} |
||||
}; |
@ -0,0 +1,30 @@
|
||||
# jweixin-module |
||||
|
||||
微信JS-SDK |
||||
|
||||
## 安装 |
||||
|
||||
### NPM |
||||
|
||||
```shell |
||||
npm install jweixin-module --save |
||||
``` |
||||
|
||||
### UMD |
||||
|
||||
```http |
||||
https://unpkg.com/jweixin-module/out/index.js |
||||
``` |
||||
|
||||
## 使用 |
||||
|
||||
```js |
||||
var jweixin = require('jweixin-module') |
||||
jweixin.ready(function(){ |
||||
// TODO |
||||
}); |
||||
``` |
||||
|
||||
## 完整API |
||||
|
||||
>[微信JS-SDK说明文档](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115) |
File diff suppressed because one or more lines are too long
@ -0,0 +1,54 @@
|
||||
{ |
||||
"_from": "jweixin-module", |
||||
"_id": "jweixin-module@1.6.0", |
||||
"_inBundle": false, |
||||
"_integrity": "sha1-Sn6mFAg+PJw/SeL9wruILPpY380=", |
||||
"_location": "/jweixin-module", |
||||
"_phantomChildren": {}, |
||||
"_requested": { |
||||
"type": "tag", |
||||
"registry": true, |
||||
"raw": "jweixin-module", |
||||
"name": "jweixin-module", |
||||
"escapedName": "jweixin-module", |
||||
"rawSpec": "", |
||||
"saveSpec": null, |
||||
"fetchSpec": "latest" |
||||
}, |
||||
"_requiredBy": [ |
||||
"#USER", |
||||
"/" |
||||
], |
||||
"_resolved": "https://registry.nlark.com/jweixin-module/download/jweixin-module-1.6.0.tgz", |
||||
"_shasum": "4a7ea614083e3c9c3f49e2fdc2bb882cfa58dfcd", |
||||
"_spec": "jweixin-module", |
||||
"_where": "F:\\惠聚h5\\huiju-user", |
||||
"author": { |
||||
"name": "Shengqiang Guo" |
||||
}, |
||||
"bugs": { |
||||
"url": "https://github.com/zhetengbiji/jweixin-module/issues" |
||||
}, |
||||
"bundleDependencies": false, |
||||
"deprecated": false, |
||||
"description": "微信JS-SDK", |
||||
"devDependencies": {}, |
||||
"homepage": "https://github.com/zhetengbiji/jweixin-module#readme", |
||||
"keywords": [ |
||||
"wxjssdk", |
||||
"weixin", |
||||
"jweixin", |
||||
"wechat", |
||||
"jssdk", |
||||
"wx" |
||||
], |
||||
"license": "ISC", |
||||
"main": "lib/index.js", |
||||
"name": "jweixin-module", |
||||
"repository": { |
||||
"type": "git", |
||||
"url": "git+https://github.com/zhetengbiji/jweixin-module.git" |
||||
}, |
||||
"scripts": {}, |
||||
"version": "1.6.0" |
||||
} |
@ -0,0 +1,21 @@
|
||||
MIT License |
||||
|
||||
Copyright (c) 2020 LancerComet |
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy |
||||
of this software and associated documentation files (the "Software"), to deal |
||||
in the Software without restriction, including without limitation the rights |
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
||||
copies of the Software, and to permit persons to whom the Software is |
||||
furnished to do so, subject to the following conditions: |
||||
|
||||
The above copyright notice and this permission notice shall be included in all |
||||
copies or substantial portions of the Software. |
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
||||
SOFTWARE. |
@ -0,0 +1,153 @@
|
||||
# Vue-jsonp |
||||
|
||||
[![VueJsonp](https://github.com/LancerComet/vue-jsonp/workflows/Test/badge.svg)](https://github.com/LancerComet/vue-jsonp/actions) |
||||
|
||||
A tiny library for handling JSONP request. |
||||
|
||||
## Quick Start |
||||
|
||||
As Vue plugin: |
||||
|
||||
```ts |
||||
import { VueJsonp } from 'vue-jsonp' |
||||
|
||||
// Vue Plugin. |
||||
Vue.use(VueJsonp) |
||||
|
||||
// Now you can use this.$jsonp in Vue components. |
||||
const vm = new Vue() |
||||
vm.$jsonp('/some-jsonp-url', { |
||||
myCustomUrlParam: 'veryNice' |
||||
}) |
||||
``` |
||||
|
||||
Use function directly: |
||||
|
||||
```ts |
||||
import { jsonp } from 'vue-jsonp' |
||||
|
||||
jsonp('/some-jsonp-url', { |
||||
myCustomUrlParam: 'veryNice' |
||||
}) |
||||
``` |
||||
|
||||
## Send data and set query & function name |
||||
|
||||
### Send data |
||||
|
||||
```ts |
||||
// The request url will be "/some-jsonp-url?name=LancerComet&age=100&callback=jsonp_{RANDOM_STR}". |
||||
jsonp('/some-jsonp-url', { |
||||
name: 'LancerComet', |
||||
age: 100 |
||||
}) |
||||
``` |
||||
|
||||
### Custom query & function name |
||||
|
||||
The url uniform is `/url?{callbackQuery}={callbackName}&...`, the default is `/url?callback=jsonp_{RANDOM_STRING}&...`. |
||||
|
||||
And you can change it like this: |
||||
|
||||
```ts |
||||
// The request url will be "/some-jsonp-url?name=LancerComet&age=100&cb=jsonp_func". |
||||
jsonp('/some-jsonp-url', { |
||||
callbackQuery: 'cb', |
||||
callbackName: 'jsonp_func', |
||||
name: 'LancerComet', |
||||
age: 100 |
||||
}) |
||||
``` |
||||
|
||||
## Module exports |
||||
|
||||
- `VueJsonp: PluginObject<never>` |
||||
|
||||
- `jsonp<T>: (url: string, param?: IJsonpParam, timeout?: number) => Promise<T>` |
||||
|
||||
## API |
||||
|
||||
### IJsonpParam |
||||
|
||||
IJsonpParam is the type of param for jsonp function. |
||||
|
||||
```ts |
||||
/** |
||||
* JSONP parameter declaration. |
||||
*/ |
||||
interface IJsonpParam { |
||||
/** |
||||
* Callback query name. |
||||
* This param is used to define the query name of the callback function. |
||||
* |
||||
* @example |
||||
* // The request url will be "/some-url?myCallback=jsonp_func&myCustomUrlParam=veryNice" |
||||
* jsonp('/some-url', { |
||||
* callbackQuery: 'myCallback', |
||||
* callbackName: 'jsonp_func', |
||||
* myCustomUrlParam: 'veryNice' |
||||
* }) |
||||
* |
||||
* @default callback |
||||
*/ |
||||
callbackQuery?: string |
||||
|
||||
/** |
||||
* Callback function name. |
||||
* This param is used to define the jsonp function name. |
||||
* |
||||
* @example |
||||
* // The request url will be "/some-url?myCallback=jsonp_func&myCustomUrlParam=veryNice" |
||||
* jsonp('/some-url', { |
||||
* callbackQuery: 'myCallback', |
||||
* callbackName: 'jsonp_func', |
||||
* myCustomUrlParam: 'veryNice' |
||||
* }) |
||||
* |
||||
* @default jsonp_ + randomStr() |
||||
*/ |
||||
callbackName?: string |
||||
|
||||
/** |
||||
* Custom data. |
||||
*/ |
||||
[key: string]: any |
||||
} |
||||
``` |
||||
|
||||
## Example |
||||
|
||||
```ts |
||||
import Vue from 'vue' |
||||
import { VueJsonp } from 'vue-jsonp' |
||||
|
||||
Vue.use(VueJsonp) |
||||
|
||||
const vm = new Vue() |
||||
const { code, data, message } = await vm.$jsonp<{ |
||||
code: number, |
||||
message: string, |
||||
data: { |
||||
id: number, |
||||
nickname: string |
||||
} |
||||
}>('/my-awesome-url', { |
||||
name: 'MyName', age: 20 |
||||
}) |
||||
|
||||
assert(code === 0) |
||||
assert(message === 'ok') |
||||
assert(data.id === 1) |
||||
assert(data.nickname === 'John Smith') |
||||
``` |
||||
|
||||
```ts |
||||
import { jsonp } from 'vue-jsonp' |
||||
|
||||
const result = await jsonp<string>('/my-awesome-url') |
||||
assert(result === 'such a jsonp') |
||||
``` |
||||
|
||||
## License |
||||
|
||||
MIT |
@ -0,0 +1,73 @@
|
||||
/** |
||||
* Vue Jsonp. |
||||
* # Carry Your World # |
||||
* |
||||
* @author: LancerComet |
||||
* @license: MIT |
||||
*/ |
||||
import { PluginObject } from 'vue/types/plugin'; |
||||
declare module 'vue/types/vue' { |
||||
interface Vue { |
||||
$jsonp: typeof jsonp; |
||||
} |
||||
} |
||||
/** |
||||
* Vue JSONP. |
||||
*/ |
||||
declare const VueJsonp: PluginObject<never>; |
||||
/** |
||||
* JSONP function. |
||||
* |
||||
* @param { string } url Target URL address. |
||||
* @param { IJsonpParam } param Querying params object. |
||||
* @param { number } timeout Timeout setting (ms). |
||||
* |
||||
* @example |
||||
* jsonp('/url', { |
||||
* callbackQuery: '' |
||||
* callbackName: '', |
||||
* name: 'LancerComet', |
||||
* age: 26 |
||||
* }, 1000) |
||||
*/ |
||||
declare function jsonp<T = any>(url: string, param?: IJsonpParam, timeout?: number): Promise<T>; |
||||
export { VueJsonp, jsonp }; |
||||
/** |
||||
* JSONP parameter declaration. |
||||
*/ |
||||
interface IJsonpParam { |
||||
/** |
||||
* Callback query name. |
||||
* This param is used to define the query name of the callback function. |
||||
* |
||||
* @example |
||||
* // The request url will be "/some-url?myCallback=jsonp_func&myCustomUrlParam=veryNice"
|
||||
* jsonp('/some-url', { |
||||
* callbackQuery: 'myCallback', |
||||
* callbackName: 'jsonp_func', |
||||
* myCustomUrlParam: 'veryNice' |
||||
* }) |
||||
* |
||||
* @default callback |
||||
*/ |
||||
callbackQuery?: string; |
||||
/** |
||||
* Callback function name. |
||||
* This param is used to define the jsonp function name. |
||||
* |
||||
* @example |
||||
* // The request url will be "/some-url?myCallback=jsonp_func&myCustomUrlParam=veryNice"
|
||||
* jsonp('/some-url', { |
||||
* callbackQuery: 'myCallback', |
||||
* callbackName: 'jsonp_func', |
||||
* myCustomUrlParam: 'veryNice' |
||||
* }) |
||||
* |
||||
* @default jsonp_ + randomStr() |
||||
*/ |
||||
callbackName?: string; |
||||
/** |
||||
* Custom data. |
||||
*/ |
||||
[key: string]: any; |
||||
} |
@ -0,0 +1,8 @@
|
||||
function e(t,n){t=t.replace(/=/g,"");var o=[];switch(n.constructor){case String:case Number:case Boolean:o.push(encodeURIComponent(t)+"="+encodeURIComponent(n));break;case Array:n.forEach((function(n){o=o.concat(e(t+"[]=",n))}));break;case Object:Object.keys(n).forEach((function(r){var a=n[r];o=o.concat(e(t+"["+r+"]",a))}))}return o}function t(e){var n=[];return e.forEach((function(e){"string"==typeof e?n.push(e):n=n.concat(t(e))})),n} |
||||
/** |
||||
* Vue Jsonp. |
||||
* # Carry Your World # |
||||
* |
||||
* @author: LancerComet |
||||
* @license: MIT |
||||
*/var n={install:function(e){e.prototype.$jsonp=o}};function o(n,o,r){if(void 0===o&&(o={}),"string"!=typeof n)throw new Error('[Vue-jsonp] Type of param "url" is not string.');if("object"!=typeof o||!o)throw new Error("[Vue-jsonp] Invalid params, should be an object.");return r="number"==typeof r?r:5e3,new Promise((function(a,c){var u="string"==typeof o.callbackQuery?o.callbackQuery:"callback",i="string"==typeof o.callbackName?o.callbackName:"jsonp_"+(Math.floor(1e5*Math.random())*Date.now()).toString(16);o[u]=i,delete o.callbackQuery,delete o.callbackName;var s=[];Object.keys(o).forEach((function(t){s=s.concat(e(t,o[t]))}));var l=t(s).join("&"),f=function(){p(),clearTimeout(m),c({status:400,statusText:"Bad Request"})},p=function(){b.removeEventListener("error",f)},d=function(){document.body.removeChild(b),delete window[i]},m=null;r>-1&&(m=setTimeout((function(){p(),d(),c({statusText:"Request Timeout",status:408})}),r)),window[i]=function(e){clearTimeout(m),p(),d(),a(e)};var b=document.createElement("script");b.addEventListener("error",f),b.src=n+(/\?/.test(n)?"&":"?")+l,document.body.appendChild(b)}))}export{n as VueJsonp,o as jsonp}; |
@ -0,0 +1,8 @@
|
||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).VueJsonp={})}(this,(function(e){"use strict";function t(e,o){e=e.replace(/=/g,"");var n=[];switch(o.constructor){case String:case Number:case Boolean:n.push(encodeURIComponent(e)+"="+encodeURIComponent(o));break;case Array:o.forEach((function(o){n=n.concat(t(e+"[]=",o))}));break;case Object:Object.keys(o).forEach((function(r){var c=o[r];n=n.concat(t(e+"["+r+"]",c))}))}return n}function o(e){var t=[];return e.forEach((function(e){"string"==typeof e?t.push(e):t=t.concat(o(e))})),t} |
||||
/** |
||||
* Vue Jsonp. |
||||
* # Carry Your World # |
||||
* |
||||
* @author: LancerComet |
||||
* @license: MIT |
||||
*/var n={install:function(e){e.prototype.$jsonp=r}};function r(e,n,r){if(void 0===n&&(n={}),"string"!=typeof e)throw new Error('[Vue-jsonp] Type of param "url" is not string.');if("object"!=typeof n||!n)throw new Error("[Vue-jsonp] Invalid params, should be an object.");return r="number"==typeof r?r:5e3,new Promise((function(c,a){var i="string"==typeof n.callbackQuery?n.callbackQuery:"callback",s="string"==typeof n.callbackName?n.callbackName:"jsonp_"+(Math.floor(1e5*Math.random())*Date.now()).toString(16);n[i]=s,delete n.callbackQuery,delete n.callbackName;var u=[];Object.keys(n).forEach((function(e){u=u.concat(t(e,n[e]))}));var f=o(u).join("&"),l=function(){p(),clearTimeout(b),a({status:400,statusText:"Bad Request"})},p=function(){m.removeEventListener("error",l)},d=function(){document.body.removeChild(m),delete window[s]},b=null;r>-1&&(b=setTimeout((function(){p(),d(),a({statusText:"Request Timeout",status:408})}),r)),window[s]=function(e){clearTimeout(b),p(),d(),c(e)};var m=document.createElement("script");m.addEventListener("error",l),m.src=e+(/\?/.test(e)?"&":"?")+f,document.body.appendChild(m)}))}e.VueJsonp=n,e.jsonp=r,Object.defineProperty(e,"__esModule",{value:!0})})); |
@ -0,0 +1,20 @@
|
||||
/** |
||||
* Generate random string. |
||||
* |
||||
* @return { string } |
||||
*/ |
||||
declare function randomStr(): string; |
||||
/** |
||||
* Format params into querying string. |
||||
* |
||||
* @return {string[]} |
||||
*/ |
||||
declare function formatParams(queryKey: string, value: any): string[]; |
||||
/** |
||||
* Flat querys. |
||||
* |
||||
* @param {string[] | (string[])[]} array |
||||
* @returns |
||||
*/ |
||||
declare function flatten(array: string[] | (string[])[]): string[]; |
||||
export { formatParams, flatten, randomStr }; |
@ -0,0 +1,80 @@
|
||||
{ |
||||
"_from": "vue-jsonp", |
||||
"_id": "vue-jsonp@2.0.0", |
||||
"_inBundle": false, |
||||
"_integrity": "sha1-O/rFa7cpQaJRHBHhoSO4dvA0J/c=", |
||||
"_location": "/vue-jsonp", |
||||
"_phantomChildren": {}, |
||||
"_requested": { |
||||
"type": "tag", |
||||
"registry": true, |
||||
"raw": "vue-jsonp", |
||||
"name": "vue-jsonp", |
||||
"escapedName": "vue-jsonp", |
||||
"rawSpec": "", |
||||
"saveSpec": null, |
||||
"fetchSpec": "latest" |
||||
}, |
||||
"_requiredBy": [ |
||||
"#USER", |
||||
"/" |
||||
], |
||||
"_resolved": "https://registry.nlark.com/vue-jsonp/download/vue-jsonp-2.0.0.tgz", |
||||
"_shasum": "3bfac56bb72941a2511c11e1a123b876f03427f7", |
||||
"_spec": "vue-jsonp", |
||||
"_where": "F:\\惠聚h5\\huiju-user", |
||||
"author": { |
||||
"name": "LancerComet", |
||||
"email": "chw644@hotmail.com" |
||||
}, |
||||
"bugs": { |
||||
"url": "https://github.com/LancerComet/vue-jsonp/issues" |
||||
}, |
||||
"bundleDependencies": false, |
||||
"deprecated": false, |
||||
"description": "A tiny library for handling JSONP request.", |
||||
"devDependencies": { |
||||
"@types/expect-puppeteer": "^4.4.3", |
||||
"@types/jest": "^26.0.14", |
||||
"@types/jest-environment-puppeteer": "^4.4.0", |
||||
"@types/puppeteer": "^3.0.2", |
||||
"jest": "^26.4.2", |
||||
"jest-puppeteer": "^4.4.0", |
||||
"puppeteer": "^5.3.1", |
||||
"rollup": "^2.28.2", |
||||
"rollup-plugin-cleanup": "^3.2.1", |
||||
"rollup-plugin-delete": "^2.0.0", |
||||
"rollup-plugin-terser": "^7.0.2", |
||||
"rollup-plugin-typescript2": "^0.27.3", |
||||
"ts-jest": "^26.4.1", |
||||
"tslint": "^6.1.3", |
||||
"typescript": "^4.0.3", |
||||
"vue": "^2.6.12" |
||||
}, |
||||
"files": [ |
||||
"dist/", |
||||
"index.d.ts", |
||||
"README.md" |
||||
], |
||||
"homepage": "https://github.com/LancerComet/vue-jsonp#readme", |
||||
"keywords": [ |
||||
"Vue", |
||||
"JSONP" |
||||
], |
||||
"license": "MIT", |
||||
"main": "./dist/index.js", |
||||
"module": "./dist/index.esm.js", |
||||
"name": "vue-jsonp", |
||||
"repository": { |
||||
"type": "git", |
||||
"url": "git+https://github.com/LancerComet/vue-jsonp.git" |
||||
}, |
||||
"scripts": { |
||||
"build": "rollup -c", |
||||
"prepublish": "npm run test", |
||||
"pretest": "npm run build", |
||||
"preversion": "npm run test", |
||||
"test": "jest" |
||||
}, |
||||
"version": "2.0.0" |
||||
} |
@ -1,3 +1,16 @@
|
||||
{ |
||||
"lockfileVersion": 1 |
||||
"requires": true, |
||||
"lockfileVersion": 1, |
||||
"dependencies": { |
||||
"jweixin-module": { |
||||
"version": "1.6.0", |
||||
"resolved": "https://registry.nlark.com/jweixin-module/download/jweixin-module-1.6.0.tgz", |
||||
"integrity": "sha1-Sn6mFAg+PJw/SeL9wruILPpY380=" |
||||
}, |
||||
"vue-jsonp": { |
||||
"version": "2.0.0", |
||||
"resolved": "https://registry.nlark.com/vue-jsonp/download/vue-jsonp-2.0.0.tgz", |
||||
"integrity": "sha1-O/rFa7cpQaJRHBHhoSO4dvA0J/c=" |
||||
} |
||||
} |
||||
} |
||||
|
After Width: | Height: | Size: 826 B |
After Width: | Height: | Size: 324 B |
Loading…
Reference in new issue