<dfn id="hx5t3"><strike id="hx5t3"><em id="hx5t3"></em></strike></dfn>

    <thead id="hx5t3"></thead><nobr id="hx5t3"><font id="hx5t3"><rp id="hx5t3"></rp></font></nobr>

    <listing id="hx5t3"></listing>

    <var id="hx5t3"></var>
    <big id="hx5t3"></big>

      
      

      <output id="hx5t3"><ruby id="hx5t3"></ruby></output>
      <menuitem id="hx5t3"><dfn id="hx5t3"></dfn></menuitem>

      <big id="hx5t3"></big>

        amilytom

        amilytom 查看完整檔案

        武漢編輯  |  填寫畢業院校  |  填寫所在公司/組織 www.jsxuan.com 編輯
        編輯

        雁過留聲,人去留名

        個人動態

        amilytom 回答了問題 · 3月26日

        vue 子組件接收父組件的props,使用emit給父組件之后如何在傳遞給子組件

        需要在子組件中使用watch監控父組件傳遞過來的數據的實時變化。根據傳遞過來的數據類型不同,watch方法略有差異。
        1、傳遞過來的數據是基礎類型

        props: {
            argumentName : String   //基礎類型,如number,string,bool
        },
        watch: {
            argumentName(newValue, oldValue) {
                console.log(newValue)
            }
        }

        2、傳遞過來的數據是數組類型

        props: {
            argumentName : Array
        },
        watch: {
            argumentName:{
                handler(newValue, oldValue) {
              for (let i = 0; i < newValue.length; i++) {
                if (oldValue[i] != newValue[i]) {
                  console.log(newValue)
                }
              }
            },
            deep: true
            }
        }

        3、傳遞過來的數據是object對象類型

        props: {
            argumentName : Object
        },
        watch: {
            argumentName:{
                handler(newValue, oldValue) {
               console.log(newValue)
              },
            deep: true
            }
        }

        關注 5 回答 4

        amilytom 關注了用戶 · 3月23日

        瘋狂的技術宅 @evilboy

        資深技術宅,愛好廣泛,興趣多變。博覽群書,喜歡扯淡。十八種語言樣樣稀松。想要了解更多,請關注微信公眾號:充實的腦洞。

        關注 6122

        amilytom 關注了用戶 · 3月22日

        民工哥 @jishuroad

        民工哥,10多年職場老司機的經驗分享,堅持自學一路從技術小白成長為互聯網企業信息技術部門的負責人。

        我的新書:《Linux系統運維指南》

        微信公眾號:民工哥技術之路

        民工哥:知乎專欄

        歡迎關注,我們一同交流,相互學習,共同成長??!

        關注 3515

        amilytom 關注了用戶 · 3月13日

        前端小智 @minnanitkong

        我不是什么大牛,我其實想做的就是一個傳播者。內容可能過于基礎,但對于剛入門的人來說或許是一個窗口,一個解惑之窗。我要先堅持分享20年,大家來一起見證吧。

        關注 10103

        amilytom 回答了問題 · 3月12日

        解決使用 antd-admin vue版本發現退出無刷新重新登陸后會保持上一個用戶的菜單。

        這樣的問題有兩種解決辦法:
        方案一:location.reload刷新頁面
        在登錄成功之后,使用location.reload()刷新一下頁面,應該問題會解決。
        但這種方法會影響體驗感。算是有瑕疵的解決方案。

        另外就是可以在退出登錄或者token失效返回到login頁面的時候,使用location.reload()刷新一下login頁面,從而清除router緩存,重新再加載路由。這種方案應該比在登錄之后跳轉頁面刷新體驗要好一些。(針對cookie或者localstorage這種token存儲方式的項目,不退出,直接關閉頁面應該會有些許瑕疵)

            if (this.$store.getters.addRouters.length > 0) { // 判斷是否已經刷新
                  location.reload()
            }

        方案二: 重置matcher
        (1)在router中定義重置路由的方法

        const createRouter = () => new VueRouter({
                mode: 'hash',
                routes: constantRoutes,
                scrollBehavior: () => ({ y: 0 })
        });
        const router = createRouter();
        export function resetRouter() {
          const newRouter = createRouter()
          router.matcher = newRouter.matcher // reset router
        }

        然后在退出登錄logout中使用 resetRouter()重置路由。
        (2)在addRoutes加載路由之前重置matcher

        
        resetRouter()   //重置路由
        router.addRoutes(store.getters.addRouters)  //加載路由

        關注 2 回答 3

        amilytom 贊了回答 · 3月11日

        vue項目安裝插件時,報了@babel/core以及@babel/preset-es2015的錯誤,請教該怎么解決?

        npm 安裝的都是最新的包,用yarn裝試試,這個項目可能比較老,新包的兼容性不好。

        先把node_module刪了

        npm i yarn -g

        ...

        yarn install 或者 npx yarn install

        關注 2 回答 1

        amilytom 提出了問題 · 3月11日

        vue項目安裝插件時,報了@babel/core以及@babel/preset-es2015的錯誤,請教該怎么解決?

        image
        image

        試過將@babel/core和@babel/preset-es2015刪除,然后再重新下載,結果刪除的時候也報錯,報錯同上面的情形差不多。

        這個項目時從github上下載,springboot+vue
        https://github.com/YXJ2018/Sp...
        springboot已經成功實施,目前vue部署之后開始npm install安裝插件,出現的問題。
        請教萬能的大佬,遇到這樣的問題該怎么解決?

        關注 2 回答 1

        amilytom 贊了回答 · 3月9日

        vue打包npm run build打包圖片發生error出錯

        你這個應該是圖片壓縮的時候出錯的
        關閉360騰訊電腦管家等軟件
        重新執行一下
        要用cnpm 因為npm下載不下了
        npm remove image-webpack-loader
        cnpm install --save-dev image-webpack-loader

        然后在 npm run build

        關注 4 回答 4

        amilytom 回答了問題 · 3月2日

        關于整合eslint和prettier的副作用

        看著像vscode編輯器。
        vscode配置eslint+prettier的方法網上有很多。我也試過了很多??偨Y了出一部分經驗,我目前在用。

        首先分別安裝eslint、prettier code formatter以及vetur這三個插件,其他的不需要。

        安裝好插件之后,打開設置(快捷鍵 ctrl+,),然后點擊右上角的“打開設置json”,打開setting.json。

        {
          "editor.fontSize": 16,
          "editor.fontFamily": "Fira Code, Consolas, 'Courier New', monospace",
          "editor.tabSize": 2,
          "editor.minimap.enabled": false,  // 縮略圖關閉
          "editor.wordWrap": "on", // 換行
          "editor.tabCompletion": "on",
          "editor.quickSuggestions": {
            //開啟自動顯示建議
            "other": true,
            "comments": true,
            "strings": true
          },
          "window.zoomLevel": 0,
          "workbench.startupEditor": "welcomePage",
          // "editor.renderWhitespace": "boundary", // 空白用圓點補足
          "editor.cursorBlinking": "smooth",
          "editor.minimap.renderCharacters": false,
          "files.associations": {
            "*.cjson": "jsonc",
            "*.wxml": "html",
            "*.wxss": "css",
            "*.wxs": "javascript"
            // "*.vue": "html"
          },
          "emmet.includeLanguages": {
            "wxml": "html"
          },
          //在使用搜索功能時,將這些文件夾/文件排除在外
          "search.exclude": {
            "**/node_modules": true,
            "**/bower_components": true,
            "**/target": true,
            "**/logs": true
          },
          // #每次保存的時候自動格式化
          "editor.formatOnSave": true,
          /************** ESlint *****************/
          "eslint.format.enable": true,
          "eslint.run": "onType",
          "eslint.options": {
            "extensions": [
              ".js",
              ".vue",
              ".ts",
              ".tsx"
            ]
          },
          "eslint.nodePath": "",
          "eslint.codeAction.showDocumentation": {
            "enable": true
          },
          // 添加 vue 支持
          "eslint.validate": [
            "javascript",
            "javascriptreact",
            "typescript",
            "html",
            "vue"
          ],
          /************** Vetur *****************/
          //  #讓prettier使用eslint的代碼格式進行校驗
          "prettier.eslintIntegration": true,
          "prettier.printWidth": 120, // 超過最大值換行
          //  #去掉代碼結尾的分號
          "prettier.semi": false,
          //  #使用單引號替代雙引號
          "prettier.singleQuote": true,
          "prettier.proseWrap": "preserve", // 默認值。因為使用了一些折行敏感型的渲染器(如GitHub comment)而按照markdown文本樣式進行折行
          "prettier.arrowParens": "avoid", // (x) => {} 箭頭函數參數只有一個時是否要有小括號
          "prettier.bracketSpacing": true, // 在對象,數組括號與文字之間加空格 "{ foo: bar }"
          "prettier.trailingComma": "none", // 在對象或數組最后一個元素后面是否加逗號(在ES5中加尾逗號)
          "prettier.endOfLine": "auto", // 結尾是 \n \r \n\r auto
          "prettier.htmlWhitespaceSensitivity": "ignore",
          "prettier.ignorePath": ".prettierignore", // 不使用prettier格式化的文件填寫在項目的.prettierignore文件中
          "prettier.jsxBracketSameLine": false, // 在jsx中把'>' 是否單獨放一行
          "prettier.jsxSingleQuote": false, // 在jsx中使用單引號代替雙引號
          "prettier.requireConfig": false, // Require a 'prettierconfig' to format prettier
          "prettier.requirePragma": false, // 不需要寫文件開頭的 @prettier
          "prettier.useEditorConfig": false,
          "javascript.format.insertSpaceBeforeFunctionParenthesis": true,
          // #這個按用戶自身習慣選擇
          "vetur.format.defaultFormatter.html": "js-beautify-html",
          "vetur.format.defaultFormatter.js": "vscode-typescript",
          "vetur.format.defaultFormatterOptions": {
            "js-beautify-html": {
              // #vue組件中html代碼格式化樣式
              "wrap_attributes": "force-aligned", //也可以設置為“auto”,效果會不一樣
              "wrap_line_length": 100,
              "end_with_newline": false,
              "semi": true,
              "singleQuote": true
            },
            "prettier": {
              "printWidth": 100,
              "singleQuote": true, // 使用單引號
              "semi": false, // 末尾使用分號
              "arrowParens": "avoid",
              "bracketSpacing": true,
              "proseWrap": "preserve", // 代碼超出是否要換行 preserve保留
              "trailingComma": "none"
            }
          },
          "[vue]": {
            "editor.defaultFormatter": "octref.vetur"
          },
          "[javascript]": {
            "editor.defaultFormatter": "esbenp.prettier-vscode"
          },
          // html格式器
          "[html]": {
            "editor.defaultFormatter": "esbenp.prettier-vscode"
          },
          "[css]": {
            "editor.defaultFormatter": "esbenp.prettier-vscode"
          },
          "editor.codeActionsOnSave": {
            "source.fixAll.eslint": true
          },
          "git.confirmSync": false,
        }
        

        vue格式是通過vetur來格式化的,javascript是通過prettier來格式化的。vue需要滿足eslint規范,需要讓渡給prettier,通過prettier來規范vue格式。但是eslint有一些特殊要求,比如設置prettier來實現。
        這樣設置了之后,ctrl+s一鍵保存然后格式化vue、js和html、css等文件。

        關注 2 回答 1

        amilytom 回答了問題 · 2月25日

        解決vue框架下的web網頁占用了其他頁面的樣式,怎么辦?

        <style scoped> @import "../assets/login.css"; </style>

        這樣寫是引入外部樣式的一種方式。但是這種方式是在頁面加載完成之后才加載的。

        VUE中scoped的編譯原理是通過vue-loader這個插件,在編譯打包的時候將帶有scoped屬性的css打上一個tag,同時將template內的所有html都打上一個相同的tag,最后通過css的屬性選擇器定位,造就了所謂的局部css。

        css-loader對@import的文件會當做外部資源,是把import的css文件單獨提取出來,并沒有把其中的樣式放在<style scoped>中解析,而是最后把<style>中計算結果和import的css文件混合后,交由style-loader最后解析為style標簽加載在頁面里。

        換句話說,也就是@import引入的樣式其實引入全局的樣式,不管有沒有scoped。

        如果要讓樣式局部起作用,需要使用style引入

        <style data-original="../assets/login.css" scoped></style>

        關注 3 回答 3

        認證與成就

        • 獲得 35 次點贊
        • 獲得 11 枚徽章 獲得 1 枚金徽章, 獲得 3 枚銀徽章, 獲得 7 枚銅徽章

        擅長技能
        編輯

        開源項目 & 著作
        編輯

        (??? )
        暫時沒有

        注冊于 2016-09-07
        個人主頁被 2.3k 人瀏覽

        一本到在线是免费观看_亚洲2020天天堂在线观看_国产欧美亚洲精品第一页_最好看的2018中文字幕