返回顶部
首页 > 资讯 > 精选 >如何在uniapp中使用nvue
  • 450
分享到

如何在uniapp中使用nvue

2023-06-15 09:06:40 450人浏览 八月长安
摘要

如何在uniapp中使用nVue?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。开始创建第一个 nvue 页面。目录结构:index.nvue 代码如下:<template

如何在uniapp中使用nVue?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

开始创建第一个 nvue 页面。

目录结构:

如何在uniapp中使用nvue

index.nvue 代码如下:

<template><div>        <text>{{text}}</text>    </div></template><script>export default {data() {return {text: 'Hello World'}}}</script>

如此真机运行可能遇到如下错误:

如何在uniapp中使用nvue

造成这个问题的原因是 uni-app 项目里必须有一个 vue 的页面,新建一个 vue 页面然后重新运行就不会有问题了。

如何在uniapp中使用nvue

image 设置 border-radius

在 nvue 里面不能给 image 设置 border-radius,想要将矩形图案变为圆形需要在 image 外面包一层 div,代码如下:

<div >    <image  src="https://img-cdn-qiniu.dcloud.net.cn/uniapp/images/uni@2x.png"></image></div>

设置真实像素

在 weex 的规范里只有一个长度单位即:px,屏幕总宽度为 750px,设置长度后,weex 引擎会根据手机屏幕的宽度动态计算出实际长度,类似于 uni-app 的 upx。

但是在实际开发过程中可能不想要这样动态的长度单位,此时可以使用 weex 1.x版本里面一个长度单位:wx。这个单位就是实际像素单位,虽然 weex 文档没有提及,但目前任然是可用的,当然随着 weex 的更新,wx 也可能会不再支持。

引入外部的 CSS

在 App.vue 里写的公用的样式在 nvue 里是不生效,多个 nvue 想要使用公用的样式,需要引入外部的 css。

由于 weex 的限制,不能在 style 节点下使用 @import "xxx.css" 这样的方式引入外部 css,需要使用如下方式引入 css:

<style src="@/common/test.css"></style><style>   .test {        color: #E96900;   }</style>

需要注意的是在 <style src="@/common/test.css"></style> 节点里写样式是不生效的。

使用 ttf 字体文件

在nvue或者weex中是不能直接在css中 通过 @font-face 这样的方式引入字体文件的,需要在js中使用 dom 模块引入字体文件,可参考 weex文档:

const domModule = weex.requireModule('dom');domModule.addRule('fontFace', {    'fontFamily': "iconfont2",    'src': "url('Http://at.alicdn.com/t/font_1469606063_76593.ttf')"});

vue 打开 nvue 时传递参数

由于 vue 打开 nvue 时不能在 url 后携带参数,只能使用 storage 的方式进行参数传递。

在 vue 页面打开 nvue

uni.setStorageSync('test', 'hello');uni.navigateTo({    url:"/pages/nvue/nvue"})

在 nvue 页面获得参数,在 created 里调用 uni-app 的 api 时需要延时一段时间才能调用成功(最新版 uni-app 框架已经修复此问题,不用延时也可以调用成功)。

<script>    export default {        created() {        console.log("nvue created!");            setTimeout(() => {                uni.getStorage({                key:'test',                    success: (res) => {                    console.log("获得上个页面传递的数据" + res.data)                    }                })            },200)        }    }</script>

仿微信朋友圈效果

在开发中,有个页面需要做到如微信朋友圈那样效果:整体列表为从上到下排列,每个列表为左右两列,左边为用户头像,右边消息内容。

在开发的时候,首先想到的是父元素使用 flex-direction: row; 让头像和内容,分别在左右展示。但是出了问题,内容区域的高度不能根据文字的长度而撑开;如果父元素使用上下排列,内容区域的高度就可以被文字所撑开。

出现问题的代码如下:

<template>    <div >        <div class="items">            <div class="headImg"></div>            <div class="rgtBox">                <text>上下排列时候可以撑开内容,上下排列时候可以撑开内容,上下排列时候可以撑开内容,上下排列时候可以撑开内容,上下排列时候可以撑开内容,上下排列时候可以撑开内容,上下排列时候可以撑开内容,上下排列时候可以撑开内容,上下排列时候可以撑开内容。</text>            </div>        </div>        <div class="items" >            <div class="headImg"></div>            <div class="rgtBox" >                <text>左右排列时候不可以撑开内容,左右排列时候不可以撑开内容,左右排列时候不可以撑开内容,左右排列时候不可以撑开内容,左右排列时候不可以撑开内容,左右排列时候不可以撑开内容,左右排列时候不可以撑开内容,左右排列时候不可以撑开内容,左右排列时候不可以撑开内容</text>            </div>        </div>    </div></template><script>    export default {    }</script><style>    .items {        background-color: #fff;        margin-bottom: 50px;    }    .headImg {        width: 100px;        height: 100px;        background-color: #555;    }    .rgtBox {        background-color: #fff;    }</style>

出现这个问题应该是 weex 的 bug,左边元素设置高度后,右边若不设置高度,其最大高度为左边元素的高度。解决办法就是将头像和内容均上下排列,然后设置内容区域的 margin-left、margin-top 和 min-height 就能达到类似的效果。

代码如下:

<template>    <div >        <div class="item">            <div class="headImg"></div>            <div class="rgtBox">                <text>一段短文本,一段短文本</text>            </div>        </div>        <div class="item">            <div class="headImg"></div>            <div class="rgtBox">                <text>这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本,这里是一段长文本</text>            </div>        </div>    </div></template><script>    export default {}</script><style>    .item {        background-color: #fff;        margin-bottom: 50px;    }    .headImg {        width: 100px;        height: 100px;        background-color: #555;    }    .rgtBox {        width: 600px;        min-height: 100px;        margin-left: 130px;        margin-top: -100px;         background-color: #fff;    }</style>

看完上述内容,你们掌握如何在uniapp中使用nvue的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: 如何在uniapp中使用nvue

本文链接: https://www.lsjlt.com/news/279235.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何在uniapp中使用nvue
    如何在uniapp中使用nvue?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。开始创建第一个 nvue 页面。目录结构:index.nvue 代码如下:<template...
    99+
    2023-06-15
  • uniapp中怎么使用nvue
    这篇文章主要介绍“uniapp中怎么使用nvue”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“uniapp中怎么使用nvue”文章能帮助大家解决问题。开始创建第一个 nvue 页面。目录结构:ind...
    99+
    2023-07-04
  • 如何使用uniapp vue与nvue实现轮播图
    小编给大家分享一下如何使用uniapp vue与nvue实现轮播图,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!vue部分如下:<template...
    99+
    2023-06-22
  • 如何在uniapp项目中使用mqtt
    目录一、uniapp插件市场的参考插件二、具体引入过程1.安装mqtt和uuid2.页面引入mqtt并调用3.运行结果由于要取一些实时数据并在手机app上展示,就想到用mqtt进行即...
    99+
    2024-04-02
  • uniapp如何使用flex
    随着移动互联网的迅速发展,越来越多的开发者开始使用跨平台技术来开发应用程序。而在跨平台开发里,uniapp是一种非常受欢迎的框架,由于使用uniapp可以快速地开发出同时支持多个平台的应用程序。在uniapp开发中,flex布局是一种非常强...
    99+
    2023-05-14
  • 一文详解如何在uniapp中优雅地使用WebView
    目录从webview页面传值到uniapp中从uniapp中动态传值到webview页面调用webview中的方法总结这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 从...
    99+
    2023-01-03
    uniapp使用webview的方法 uniapp和webview实时交互 uniapp使用webview
  • Uniapp中如何使用谷歌地图
    随着移动应用的兴起,越来越多的开发者选择使用跨平台开发框架来编写应用程序。Uniapp是一种目前比较流行的跨平台开发框架,可以在Android、iOS、Web等多个平台上部署应用。同时,谷歌地图是一种广泛使用的地图应用程序,然而,许多开发者...
    99+
    2023-05-14
  • 如何在Uniapp中设置字体
    在移动端开发中,字体的设置是非常重要的一个方面。如果字体设置得当,可以提高App的阅读体验,增强用户的舒适感。而本文主要介绍如何在Uniapp中设置字体。一、基本概念在 Uniapp 开发中,我们经常需要对文本内容样式进行调整,包括字体、颜...
    99+
    2023-05-14
  • 怎么在uniapp项目中使用mqtt
    这篇文章将为大家详细讲解有关怎么在uniapp项目中使用mqtt,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、uniapp插件市场的参考插件  https://ext.dcloud.net.cn/pl...
    99+
    2023-06-15
  • Vue和uniapp中该如何使用canvas详解
    目录Vue与uniapp中如何使用canvas?示例属性说明注意事项:总结Vue与uniapp中如何使用canvas? 一般Vue情况下我们使用canvas是这样使用的 //创建ca...
    99+
    2022-11-13
    uni-app vue uniapp使用canvas vue uniapp canvas
  • 如何使用Uniapp绘制横线
    在Uniapp中想要绘制一条横线并不难,通过一些简单的代码就可以实现绘制横线的操作。如果你想学习如何使用Uniapp绘制横线,请跟随本文学习。一、使用CSS绘制横线我们可以通过在标签中使用CSS来绘制横线。通过以下代码片段,我们可以轻松地在...
    99+
    2023-05-14
  • 如何在uniapp中删除本地图片
    随着移动应用的不断发展,用户上传和保存本地图片的需求越来越大,而uniapp框架作为一个跨平台的开发框架,也越来越受到开发者的喜爱。在uniapp中,删除本地图片是一个常见的操作,但是对于一些新手来说可能会有一些困惑。本文将从二个方面来介绍...
    99+
    2023-05-14
  • 如何在uniapp中封装跳转方法
    在开发uniapp应用的过程中,经常会需要跳转到不同的页面,比如进入登录页面、个人中心页面等等。为了方便开发,我们可以封装一个跳转方法来统一管理页面跳转,本文将介绍如何在uniapp中封装跳转方法。一、封装跳转方法新建一个util.js文件...
    99+
    2023-05-14
  • UNiAPP中如何使用render.js绘制高德地图
    目录什么是render.js使用方式在uniAPP中使用render.js 绘制高德地图明确需求解决思路编写代码vue页面使用render.js初始化地图实现效果render.js中...
    99+
    2024-04-02
  • 如何使用uniapp去除应用角标
    一、背景随着未读消息标记在移动应用中的广泛应用,很多移动应用都开始使用应用角标。应用角标可以提醒用户有未读消息,并且让用户更快地获取相关消息。然而,有些用户认为应用角标对于他们并不重要,而且它们可能会造成干扰。因此,有时候用户会想要禁用或去...
    99+
    2023-05-14
  • 如何在uniapp中自定义错误页面
    随着移动互联网的蓬勃发展,手机APP已经成为了人们日常生活的必需品。为了满足用户的需求,APP开发变得越来越繁琐和复杂。像uniapp这样的跨平台开发框架,为开发者提供了更便捷的开发方式。但在使用过程中,我们不可避免地会遇到一些错误或异常情...
    99+
    2023-05-14
  • 如何在UniApp中禁止iOS页面弹动
    UniApp是一种跨平台开发框架,它可以让开发者使用一种语言(Vue.js)在多个平台上开发应用程序。其中包括iOS平台,但是在开发过程中,有一个常见的问题是iOS页面弹动。Page Bounce是指页面上下弹动的现象。当页面长度超出视图窗...
    99+
    2023-05-14
  • Uniapp中colorui怎么使用
    Uniapp是一款基于Vue.js的开发框架,可以一次编写代码,将应用程序部署到多个平台,如Web、iOS、Android等。ColorUI是Uniapp框架中的一种UI框架,它提供了丰富的UI组件、模板和样式,使得开发者可以快速开发出美观...
    99+
    2023-05-22
  • Uniapp中怎么使用Echarts
    这篇文章主要介绍“Uniapp中怎么使用Echarts”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Uniapp中怎么使用Echarts”文章能帮助大家解决问题。一、视图层画图依赖于canvas标签...
    99+
    2023-07-04
  • 如何使用uniapp动态设置宽度
    随着移动互联网的发展,越来越多的开发者开始学习和使用uniapp来快速开发实用的移动App。在开发过程中,动态设置组件的宽度是一个非常常见的需求。本文就将介绍如何使用uniapp动态设置宽度,让你的应用在不同的设备上都能够有着很好的视觉效果...
    99+
    2023-05-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作