vue中 computed 下使用箭頭函式會報錯
computed: {
myPhone: () => {
let num3 = this.mobile.slice(-4);
let num1 = this.mobile.slice(0,-8);
let str = `${num1}****${num3}`;
return str;
}
}
這種情況下會報一個這樣的錯,其實並不是slice方法的原因,而是我們在computed中使用了箭頭函式
我們把箭頭函式換掉,就不會再報錯了。
首先我們來說一下computed的作用
和普通屬性一樣是在模板中繫結計算屬性,當data中對應資料發生改變時,計算屬性值會隨之改變。
計算屬性compute是基於他們的依賴(如果是例項範疇之外的依賴,比如非響應式的notreactive是不會觸發屬性更新的)進行快取(計算屬性的結果會被快取),只有相關依賴會發生改變時才會重新求值,未改變只會返回只之前的結果,不在執行函式
所以
計算屬性computed不應該使用箭頭函式來定義計算屬性 因為箭頭函式綁定了父級作用域的上下文,所以 this 將不會按照期望指向Vue
相關推薦
vue中 computed 下使用箭頭函式會報錯
computed: { myPhone: () => { let num3 = this.mobile.slice(-4); let num1 = this.mobile.slice(0,-8); let str =
在vue中解決提示警告 for迴圈報錯的方法
警告 1.出現這個警告問題的時候 我們可以去main.js中在頭部新增這句話: ? 1
python3 量化交易 tushare庫 需要注意的是路徑要在tushare檔案下,否則會報錯。
生命不息,學習不止 以前不知道怎麼從網上直接獲取資料,都是從交易軟體上下載資料,也只有個別的軟體才能下載,例如通達信可以匯出資料,現在學到了一種新的方法,利用tushare可以獲取金融資料,這裡就簡單的分享一下股票資料的獲取方法。 Tus
javascript的倒計時功能中newData().getTime()在iOS下會報錯問題解決
clas span 知識 http get log 不能 修改 國外 找了半天問題啊!!! 我使用了mobiscroll.js這個插件 ,但是ios手機一直報錯! 在做移動端時間轉化為時間戳時,遇到了一個問題,安卓手機上訪問時,能拿到時間戳,從而正確轉換時間,而在iOS上缺
解決MUI在vue專案中,底部tab不能切換並且會報錯的問題
報錯如圖,通過多方面檢視,是谷歌瀏覽器的一種預設機制https://blog.csdn.net/qq_34129814/article/details/79015150我在引用APP.VUE檔案裡面使用了上述文章所說的這一行程式碼,但是在重新整理頁面的時候依舊報錯之後我又在後
標頭檔案裡面實現一個函式,在兩個cpp中包含,則重複定義,如果加上inline則不會報錯
為什麼類的定義應當寫在標頭檔案中,從而被多個原始檔包含?比如myclass.h定義了一個類myclass(只定義類,不定義成員函式), file1.cpp裡#include "myclass.h",編譯得到file1.obj; file2.cpp裡也#include "my
scala中計算的的一個小問題,超出Int.maxValue時不會報錯
class sca cal div 問題 pri 如果 int sin 如果小於Int.max時他不會報錯 def sumcount(str:String): Int ={ val ints = for(c <- str)yield { p
做一個登陸的文件操作,存到文件中是一個字典的形式{name:[pwd,tel]},為啥會報錯 ?請指點
strip() key all urn pen nco nbsp cal rac def register(name, pwd, tel): with open(‘userdate.txt‘, ‘a‘, encoding=‘utf-8‘) as f:
關於在es6的在class類裏定義箭頭函數會報錯的問題?
val .com HR 構造 col int gpo color 表示 class App { constructor() { this.handleClick = () => { console.log(‘this
vs2017中char* str = "1234asd56";會報錯,——const char*類型的值不能用於初始化char*類型的實體
實體 新版本 歷史 程序 font bsp spa 版本 pan 原因: "1234asd56"是常量 ,正確的寫法本身就是:const char* str = "1234asd56";之所以之前的vs版本可以寫成char*是歷史遺留原因,在vs2017中如題目中寫時,程序
Vue中computed的set和get方法
拆分 ack data his col ted this mpat idt 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"&g
vue中style下scope的使用和坑
在vue元件中,為了使樣式私有化(模組化),不對全域性造成汙染,可以在style標籤上新增scoped屬性以表示它的只屬於當下的模組,這是一個非常好的舉措,但是為什麼要慎用呢?因為在我們需要修改公共元件(三方庫或者專案定製的元件)的樣式的時候,scoped往往會造成更多的困難,需要增加額外的複雜度。
es6中的(=>)箭頭函式
x => x * x 上面的箭頭函式相當於: function (x) { return x * x; } 箭頭函式相當於匿名函式,並且簡化了函式定義。 箭頭函式有兩種格式,一種像上面的,只包含一個表示式,連{ ... }和return都省略掉了。 還有一種可以包含多條語句,這時候就不能省
vue中computed 和 watch的異同
computed 在資料未發生變化時,優先讀取快取。computed 計算屬性只有在相關的資料發生變化時才會改變要計算的屬性,當相關資料沒有變化是,它會讀取快取。而不必想 motheds方法 和 watch 方法是的每次都去執行函式。 computed:{ fullName:{
挖坑指南:在vuex的多個module中的getters裡存在相同的方法名,使用mapGetters會報錯?
前言 其實這個標題就是我們今天要談論的話題。 開始 在vuex中有多個module是很正常滴,為了方便管理呢,我們有些module中使用了相同的名稱。那麼,在使用時,就會報錯啦~ 實踐 其實在vuex的官網,已經為我們描述過啦~ vuex:https://vuex.vuejs
Vue中computed VS watch 區別 及computed VS method區別
Vue中computed VS watch 區別 及computed VS method區別 computed VS watch 先來看官網中對計算屬性(computed)的解釋: 模板內的表示式非常便利,但是設計它們的初衷是用於簡單運算的。在模板中放入太多的邏輯
vue中computed屬性&method方法的區別
在vue中使用computed屬性和使用method方法都能達到同樣的效果;兩者的區別有兩點:1)呼叫computed屬性時,因為是例項的屬性,所以使用{{}}呼叫的時候直接{{名稱}},不用(),而使用{{}}呼叫method的時候需要{{方法名()}};2)computed比method更節省效
做面試的不倒翁:淺談 Vue 中 computed 實現原理
編者按:我們會不時邀請工程師談談有意思的技術細節,希望知其所以然能讓大家在面試有更出色表現。也給面試官提供更多思路。 雖然目前的技術棧已由 Vue 轉到了 React,但從之前使用 Vue 開發的多個專案實際經歷來看還是非常愉悅的,Vue 文件清晰規範,api
vue路由傳物件重新整理會報錯,資料丟失,用json字串解決
我的訂單頁面---------》訂單詳情頁面 我的訂單頁面: encodeURIComponent(JSON.stringify(this.detailMsg))------變成json字串,且加密 toDetail(index) { request.p
淺談 Vue 中 computed 實現原理
雖然目前的技術棧已由 Vue 轉到了 React,但從之前使用 Vue 開發的多個專案實際經歷來看還是非常愉悅的,Vue 文件清晰規範,api 設計簡潔高效,對前端開發人員友好,上手快,甚至個人認為在很多場景使用 Vue 比React 開發效率更高,之前也有斷斷