舊接口格式和使用者不兼容
中間加一個適配轉換接口javascript
class Adaptee { specificRequest(){ return '德國標準的插頭' } } class Target { constructor(){ this.adaptee = new Adaptee() } request() { let info = this.adaptee.specificRequest() return `${info}-> 轉換器->中國標準插頭` } } // 測試 let target = new Target() let res = target.request() console.log(res)
// 本身封裝的ajax,使用方式以下: ajax({ url: '/getData', type: 'Post', dataType: 'json', data:{ id:"123" } }) .done(function(){}) //但由於歷史緣由,代碼中全是:$.ajax({...}) // 作一層適配器 var $ = { ajax:function(options){ return ajax(options); } }
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> <title>Document</title> </head> <body> <div id="example"> <p>Original messageL:"{{message}}"</p> <p>Computed reversed message:"{{reversedMessage}}"</p> </div> <script src="https://cdn.bootcss.com/vue/2.5.16/vue.js"></script> <script> var vm = new Vue({ el: "#example", data: { message: "hello" }, computed: { // 計算屬性的getter reversedMessage: function () { // 'this' 指向vm實例 return this.message .split("") .reverse() .join(""); } } }); </script> </body> </html>