nvue遇到的一些坑


1.nvue里可以用預編譯 ,面的通過引入文件的方式樣式不可以用預編譯語言;

2.不能隨心所欲地使用選擇器,nvue只支持單類選擇器(不可以使用交集選擇器和后代選擇器,但可以使用並集選擇器);
3.div是容器,里面不能直接寫字,要在里面寫上<text>,<text>里面才寫字,並且<text>里面的字體樣式沒有繼承自父元素;
4.屬性必須分開寫,不能用簡寫語法,例如border要寫成border-width,border-color(border-style默認是solid,與瀏覽器的CSS默認是none不同,可以不用設置;
5.nvue默認是flex布局,但是默認方向是垂直方向而不是水平方向。
6.長度單位只能用rpx(upx)和px,rem,vw,vh不生效,要占滿屏高度不能用100vh而應該用flex:1。

以下是我自己的偶然發現:

1.nvue支持行高line-height,但是不支持純數字的行高(表示行高是字體大小的多少倍),只支持帶單位的長度。(我就特別喜歡用數字做為行高,結果打開頁面我一臉懵逼,文字只能看見一條線,改成具體的高度后就正常了)

2.nvue不支持box-sizing的設置。(我之前很喜歡用padding撐開距離,因為box-siziing默認是content-box,用padding可以撐開距離,結果nvue的box-siziing是border-box而且無法修改,給圖片加上padding會讓圖片變形)

3.nvue里的fixed定位的元素不受z-index的影響,層級完全由先來后到決定,寫在后面的元素層級永遠比寫在前面的高。

4.nvue里,如果需要用bottom來定位,怎么辦?我知道定位的四個偏移量里,top優先級高於bottom,left高於right。在瀏覽器中,只想用bottom來定位,不想用top,直接用bottom沒問題,在nvue里我就碰壁了。解決方法是:先把優先級高的top“解決掉”,才能用bottom——在樣式里,寫上top:auto;然后對bottom的設置才會生效。left和right也是同理。

5.nvue要怎么控制文字的換行?CSS里有white-space控制換行,然而nvue不支持。如果想讓文字不換行,可以設置lines屬性為1(默認為0表示沒有限制多少行)

6.uni-app的為vue文件提供了更多的生命周期,nvue文件卻沒有。比如onLoad就沒有,如果要做初始化的工作,可以寫在mounted生命周期鈎子里去。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM