<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>

        KiritoXF

        KiritoXF 查看完整檔案

        填寫現居城市  |  填寫畢業院校  |  填寫所在公司/組織 localhost 編輯
        編輯
        _ | |__ _ _ __ _ | '_ \| | | |/ _` | | |_) | |_| | (_| | |_.__/ \__,_|\__, | |___/ 個人簡介什么都沒有

        個人動態

        KiritoXF 回答了問題 · 2月23日

        java中如何在控制臺打印Object[] param,toString方法輸出的是對象而不是詳情???

        好像可以引個 對象轉 JSON 的包,然后轉成 JSON 打印出來?;蛘呷绻?param 的詳細內容的話,可以重寫 toString 方法

        關注 3 回答 3

        KiritoXF 贊了回答 · 2月8日

        問幾個ts的問題

        如何給一個接口的key統一加個前綴,如{a:string,b:number}變成{ta:string,tb:number}

        3.x版本不支持,從4.1開始支持 Template Literal。

        // Helpers
        type Prefix<T extends string, P extends string> = `${P}${T}`;
        
        type PrefixKey<T, P extends string> = {
          [K in keyof T as Prefix<K & string, P>]: T[K];
        };
        
        
        interface Origin {
          a: string;
          b: number;
        }
        
        type Decorated = PrefixKey<Origin, "t">;

        如何設置一個函數的返回值是某個接口的key,比如有接口{age:number,name:string},一個函數傳入string,然后返回string,但是這函數的返回值是上面那個接口的key,也就是age或者name
        type API = (input: string) => Promise<"age" | "name">;

        兩個結構一樣的接口如何優雅的寫,比如接口A{a:{b:string}},接口B{c:{d:string}},兩個接口的結構和類型是一樣的,只有key不一樣

        只要有不同之處,就是完全不同的類型。所以你說的結構和類型一樣的是錯誤的。在這種情況下,你必須寫出每個不同的類型。
        如果這兩個類型有相似可推導的部分,你可以寫一些幫助類型生成你要的新類型。

        type MyInterface<K0 extends string, K1 extends string, V> = {
          [Key0 in K0]: {
            [Key1 in K1]: V;
          };
        };
        
        type A = MyInterface<"a", "b", string>;
        type B = MyInterface<"c", "d", string>;

        ts如何通過if判斷來設置type,比如true是a|b,false是c|d,我看有個is,不知道是不是

        Typescript中是沒有if語句的。要進行條件推導,可以使用三元運算。

        type MyConditionalType<T extends boolean> = T extends true
          ? "a" | "b"
          : "c" | "d";

        關注 3 回答 1

        KiritoXF 關注了問題 · 2月7日

        問幾個ts的問題

        求教幾個ts的問題,ts版本3.x

        1. 如何給一個接口的key統一加個前綴,如{a:string,b:number}變成{ta:string,tb:number}
        2. 如何設置一個函數的返回值是某個接口的key,比如有接口{age:number,name:string},一個函數傳入string,然后返回string,但是這函數的返回值是上面那個接口的key,也就是age或者name
        3. 兩個結構一樣的接口如何優雅的寫,比如接口A{a:{b:string}},接口B{c:{d:string}},兩個接口的結構和類型是一樣的,只有key不一樣
        4. ts如何通過if判斷來設置type,比如true是a|b,false是c|d,我看有個is,不知道是不是

        關注 3 回答 1

        KiritoXF 回答了問題 · 2月3日

        解決這是typescript 的什么語法,tsc瘋狂報錯

        這是 TypeScript 3.8的語法 僅僅導入
        中文文檔:https://jkchao.github.io/type...
        英文文檔:https://www.typescriptlang.or...

        關注 1 回答 2

        KiritoXF 贊了回答 · 2月2日

        誠心提問,大家到底怎么做移動端適配

        rem 和 em 的方案兼容性應該是最好的,早在移動端從 WAP 時代步入 HTML5 時代,rem 就已經可用了。rem 本身只是意思為 root em 的相對單位,因為調整 root 節點的 font size 可以改變所有用 rem 為單位的 CSS 值,因此早期大家喜歡用 rem 來做不同屏幕適配。

        viewport 單位其實比 rem 的兼容性稍差的,但是就 2021 的時間點而言,二者都不用考慮兼容性問題了。其實用什么 CSS 單位并不是解決移動端適配的關鍵,關鍵其實是 UI 設計本身是如何考量不同寬度及長寬比顯示設備的,前端又打算用什么方案去適配。根據 dpr 調整 root 節點的 font-size,rem 也一樣可以做到你說的最終解。

        成本最低的方案就是 UI 只出一份設計稿,前端根據設備屏幕寬度,在任意設備上整體縮放還原設計稿。比如設計稿是按照 320@2x 設計的(iPhone5),那么在寬度 375px, dpr 為 2 的 iPhone6 上,看到的就是等比放大了 1.17 倍的效果。顯然,按鈕圖標甚至文字都會顯得更大。要實現這種方案,你可以用 rem,所以元素寬高統統 rem。當然也可以用 px/vw/vh 配合 viewport meta tag 設置 width=320 而非 device-width,一樣能達到等比縮放的效果。也就是我說的,用什么單位不重要,重要的是你按什么方案去實現。

        如果希望在更大的屏幕上顯示更多的內容,那就不能無腦放大,UI設計的布局也需要能夠自適應不同寬度和寬高比。不同組件可能會有不同的響應式解決辦法,比如淘寶首頁的橫向滑動的圖標列表,大屏下能顯示 5 個,小屏下顯示 4 個半,無論大小屏,大家高度都一致。而輪播頭圖由于我們不能改變圖片長寬比,所以只能是大屏上寬度大,整個組件所占的高度也更高。當然如果你考慮得很周全,也可以設計出適配不同寬度而高度一致的輪播圖,給不同設備設計不同的圖片,按設備加載,只是沒必要。

        頁面上的不同組件或元素,有些不應該按比例縮放,比如文字,按鈕,有些可以橫向伸縮,比如導航條,搜索框,有些直接縮放會更簡單,比如頭圖,或者網格排列的商品,有些可以均勻分配多余的空間,有些用橫向滑動規避掉了不同寬度的問題。這些都需要前端和 UI 設計師共同商討,必要時 UI 設計師出更多尺寸的設計圖來示意布局如何響應式調整。

        和高度相關的 UI 設計我猜多半類似 H5 這種一屏一屏滑動的頁面,或者類似 H5 游戲一樣的,而非傳統流式布局結構。這種也不存在大屏需要看到更多的內容的需求了吧?但是等比放大顯然不行,設備寬高比不一致,我們希望不同設備上都滿屏顯示。這種時候就要利用 vw/vh absolute 和百分比定位了。

        總結就是無腦等比放大最省事,做響應式則需要針對組件思考不同寬度下的處理方案。個人實踐是,viewport 設置 width=device-width ,CSS 單位直接用 px,配合 flex/grid 做自適應布局,極少數場景用 calc + vw/vh 實現特殊的需求。

        關注 6 回答 6

        KiritoXF 回答了問題 · 1月27日

        解決js 雙重for循環問題

        const data1 = ['empty', 'name'];
        const data2 = ['app_secret', 'id'];
        
        let data3 = '';
        data1.map((str, index) => {
          data3 += `${data1[index]}=${data2[index]},`;
        });
        
        data3 = data3.slice(0, data3.length - 1);
        console.log(data3); // "empty=app_secret,name=id"

        關注 2 回答 2

        KiritoXF 回答了問題 · 1月26日

        js三目運算,怎么能簡化一下?

        如果便于閱讀的話,可以用 if 替代三目

        let token = '';
        let b = token;
        if (!token) {
            b = '123';
        }

        關注 6 回答 6

        KiritoXF 回答了問題 · 1月26日

        解決ts報錯2304找不到名稱

        那個沒引進來吧

        import { Iobj } from './interface.ts'

        關注 3 回答 3

        KiritoXF 關注了問題 · 1月26日

        typescript, 是否可以定義一個name為string, 其他屬性為number的對象?

        typescript, 是否可以定義一個name為string, 其他屬性為number的對象?

        interface A {
            name: string,
            [key: string]: number
        }

        想當然了, 這是官方文檔中提到的錯誤:

        image.png

        請問有什么方法可以做到嗎?

        關注 4 回答 1

        KiritoXF 回答了問題 · 1月25日

        sourcetree貯藏功能,只能貯藏一個文件嗎?

        stash 好像是 git 的功能

        1. 點貯藏的話應該是把本地所有的修改文件都貯藏了
        2. 不需要。如果暫存了的話可以勾選 "貯藏后保持暫存修改"

        關注 1 回答 1

        認證與成就

        • 獲得 64 次點贊
        • 獲得 10 枚徽章 獲得 1 枚金徽章, 獲得 1 枚銀徽章, 獲得 8 枚銅徽章

        擅長技能
        編輯

        開源項目 & 著作
        編輯

        (??? )
        暫時沒有

        注冊于 2018-12-26
        個人主頁被 1.9k 人瀏覽

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