Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // fs.readFile('a.txt', (d) => {console.log('d')})
- // =>
- // promisify(fs.readFile)('a.txt').then((d) => console.log(d))
- function promisify(method) {
- const ctx = this
- return function() {
- let args = Array.prototype.slice.call(arguments)
- return new Promise((resolve, reject) => {
- args.push((() => {
- return function (err, result) {
- if (err) {
- return reject(err)
- }
- return resolve(result)
- }
- })())
- method.apply(ctx, args)
- })
- }
- }
- const fs = require('fs')
- const fp = promisify(fs.readFile)
- fp('./test.html', 'utf-8').then((d) => {
- console.log(d, 'dd')
- }).catch(err => console.log(err))
- // promise for miniprogame
- function promisify(callback) {
- return (params = {}) => {
- return new Pormise((reslove, reject) => {
- params = Object.assign(params, {
- success: function(result) {
- reslove(result)
- },
- fail: function(err) {
- reject(err)
- }
- })
- })
- }
- }
- const pwx = new Proxy({}, {
- get(target, name) {
- if (name in wx) {
- return promisify(wx[name])
- }
- }
- })
- pwx.login().then()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement