如何使用 vue.js 计算 或 上的样式?

2023-12-05

我在用vuejs 样式绑定在计算样式时动态呈现更改。

这对于我的 Vue 实例范围内的所有内容都非常有效,但是我如何计算 body 或 html 标签的样式? 当您可以绑定 vue 实例时,这曾经是可能的,但 vue 不再允许您这样做。

我想动态更新在 vue 中使用我的计算变量的背景颜色。

编辑:添加代码片段来演示

var app = new Vue({
  el: '#app',
  data: {
    color: '#666666'
  },
  computed: {
    backgroundColor: function() {
      return {
        'background-color': this.color
      }
    }
  },
  methods: {
    toggleBackground: function() {
      if(this.color=='#666666'){
        this.color = '#BDBDBD'
      } else {
        this.color = '#666666'
      }
    }
  }
})
<script src="https://vuejs.org/js/vue.min.js"></script>
<html>
  <body>
    <div id="app" :style="backgroundColor">
      <div>
        lots of content...
      </div>
      <button @click="toggleBackground"> Click to toggle </button>
    </div>
  </body>
</html>

如果你真的需要风格body本身,您需要使用纯 JavaScript 在watcher。下面是一个简单的例子。

You should(我没有尝试过,但我假设)能够通过使主体和外部容器不滚动来克服过度滚动效果。在里面放一个可滚动的容器。当它滚动时,它会显示你的外容器,对吗?

不具有约束力的原因body are here(适用于 React,但适用于 Vue)。

有什么问题吗?大家都来更新吧!有些人有 将模态附加到其上的非 [Vue] 代码。谷歌字体加载器将 愉快地将元素放入 body 中一小会儿,并且 如果你的应用程序尝试更新,它会严重且莫名其妙地崩溃 在那段时间里处于最高水平的东西。你真的知道什么吗 你所有的第三方脚本都在做什么?广告或社交媒体怎么样? 网络SDK?

new Vue({
  el: '#app',
  data: {
    isRed: false
  },
  watch: {
    isRed() {
      document.querySelector('body').style.backgroundColor = this.isRed ? 'red' : null;
    }
  }
});
#app {
  background-color: white;
  margin: 3rem;
}
<script src="//cdnjs.cloudflare.com/ajax/libs/vue/2.4.2/vue.min.js"></script>
<div id="app">
  <input type="checkbox" v-model="isRed">
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 vue.js 计算 或 上的样式? 的相关文章

  • Sails JS 在视图中包含节点模块

    我正在使用帆 http sailsjs com http sailsjs com 开发一个小平台 按照文档 一切都很顺利 但是作为这个 javascript 框架世界和 npm 等的新手 我在包含其他 node modules 并在 ejs
  • 如何在卡组bootstrap vue上设置行列?

    我的 vue 组件是这样的
  • 在 Vue js 中获取 JSON 属性时出错

    我在使用 Vue js 时遇到了一个奇怪的行为 我进行 ajax 调用 将结果 一些 JSON 存储到名为 modello 的 Vue 数据属性中 lineaGialla selected false descrizione Questa
  • Vue:单个网站可以使用多个 Vue 应用程序吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我有一个 Hugo 静态网站 我正在使用 Vue 使其动态化 我们正在转型 长期计划尚未确定 但在中期阶段我们正在使用 Vue 我已经在一个页面
  • 如何在Vuejs中动态管理页面标题?

    我构建一个应用程序 我有一个带有页面标题的标题 目前 我使用视图路由器来定义我的标题 path events name events component Events meta title Liste des v nements 在我的刀片
  • VueJS $store.dispatch 发送多个参数

    我想将第二个参数传递给调度调用 this store dispatch testAction this employee employeeId departmentId 我的商店操作如下 async testAction dispatch
  • 如何以编程方式添加 Vue 3 组件?

    Vue 3 没有 Vue extend 方法 因此这里的示例不起作用 https css tricks com creating vue js component instances programmatically https css t
  • 将 Select2(多项选择)与 vue.js 结合使用

    我是 vue 新手 并遵循了他们的 自定义指令 http vuejs org examples select2 html http vuejs org examples select2 html 当仅选择一个项目时 此方法效果很好 但当您选
  • 使用 Javascript 在前端创建基本 URL(开发、API 和生产)

    无论开发和部署如何 如何制作适用于 http https localhost 端口和实际域的基本 url 我想创建一个可以在所有场景或条件下工作的基本 url 无论 http https 协议 端口 本地主机和实际域如何 无论是在开发中还是
  • 如何使用vue.js获取点击时按钮的值

    我在页面上有几个按钮 它们连接到相同的方法webcamSendRequestButton
  • 模拟安装挂钩 Jest 测试装置

    我正在对组件进行一些单元测试 但是 在某些组件中 我有一些东西在运行mounted使我的测试失败的钩子 我设法模拟了我不需要的方法 但是 我想知道是否有一种解决方法可以模拟mounted钩住自己 components attendeesLi
  • Web 扩展中共享 vuex 状态(死对象问题)

    我正在尝试在网络扩展中使用共享的 vue js 状态 状态存储在后台脚本的 DOM 中并呈现在弹出页面中 第一次尝试 我的第一次尝试是使用一个没有 vuex 的简单商店 背景 js var store count 0 popup js br
  • Asyncdata 与 Fetch 之间的区别

    获取数据和异步数据之间的确切区别是什么 官方文档是这么说的 异步数据 您可能想要获取数据并在服务器端呈现它 Nuxt js 添加 asyncData 方法 让您可以在之前处理异步操作 设置元件数据 异步数据每次在加载组件之前调用 仅适用于
  • 如何修复套接字 io 中的 400 错误错误请求?

    我有一个前端应用程序 VUE JS 我有一个后端 Nest JS Vue JS 应用程序使用 vue socket io extended 库通过 websockets 从后端获取数据 当 Vue JS 应用程序启动时 我在浏览器中看到错误
  • 如何在 vuex nuxt 中获取嵌套 getter

    i have store index js像这样 new Vuex Store modules nav namespaced true modules message namespaced true state count 0 conver
  • Nuxt.js 多个资源的根路由和根级 slugs

    我正在使用 Nuxt 构建一个电子商务前端 我希望为尽可能多的资源提供根级 slugs 最重要的是目录路径和产品 URL 一个明显的方法是使用 Nuxt 文件结构进行路由创建 com category men Tshirt com cate
  • 未向导出的模块提供此上下文

    我对问题的提出感到不满意 受到鼓励提出改进建议 另外 请记住 由于无知 无知导致烦恼 我对问题的诊断可能有缺陷 对于那个很抱歉 In 这个答案 https stackoverflow com a 40893583 1525840建议使用th
  • vue如何检测页面是否刷新?

    我尝试这样 created window addEventListener beforeunload function event event returnValue Write something this router push 像这样
  • Vuetify 自动完成类似项目未显示

    我的本地案例中有类似标题的自定义帖子API我尝试通过搜索查询显示帖子items array Data count 5 entries id 3 title Senior developer Python id 4 title Senior
  • VueJS 中数据无法正确显示

    我的 VueJS 代码有一个小问题 在 输出 压缩的 GS1 数字链接 URI 部分中 When there is no result it should have nothing display like this I have remo

随机推荐

  • Redux-form 6.0.0 Field 组件外访问错误

    在 Redux form v5 中 我能够从装饰表单中的任何位置访问 内联 错误 异步验证 如下所示 const fields email inside the decorated form const email this props f
  • AIR 3.5 移动项目设备 ID

    我想知道是否有人知道针对移动设备 iOS 和 Android 将数据存储在全局数据库中的最佳方法 我正在构建一个根据查询写入 检索信息的应用程序 但我需要知道返回的任何记录是否是从该设备发送的 基本上 这个想法是 如果用户提交一些信息 存储
  • 如何向用户显示时间量?

    我想将时间量从毫秒转换为人类可读的字符串 例如 3 600 000应显示为1 00 00 1小时 Java 中是否有现有的库或类可以做到这一点 从 1 5 开始有 java util concurrent TimeUnit 类 像这样使用它
  • Symfony2 Twig 获取子实体的总计数

    存在以下实体 农场 谷仓和动物 一个农场可以有很多谷仓 一个谷仓可以有很多动物 在 TWIG 模板中显示农场时 还应显示动物的数量 做这个的最好方式是什么 我创建了一个 TWIG 扩展 它允许我轻松显示谷仓的数量 public functi
  • urllib、urllib2、urllib3 和 requests 模块之间有什么区别?

    在Python中 它们之间有什么区别urllib urllib2 urllib3 and requests模块 为什么是三个 他们似乎做着同样的事情 我知道已经说过了 但我强烈推荐requestsPython 包 如果您使用过 Python
  • 如何在 Android 中点击图标打开侧边栏?

    我已经实施了Hamburger酒吧与App toolbar他们都工作得很好 以下是快照toolbar and hamburgerbar Hamburger bar 我可以通过滑动打开此栏 但我也想通过单击可绘制图标 右上角图标 将其打开 我
  • 在 Qt 中从字符串中提取参数,包括带引号的区域

    我有一个 Qt5 C 程序 它接收一个包含程序名称和可能的参数的 QString 我需要将这个 QString 分成多个字符串 例如 字符串 tmp myprog param1 param2 2 param3 1 2 3 p 4 应该分为
  • 如何在文件名中使用索引

    这可能是一个微不足道的问题 我不是一个专业的程序员 我而是一个正在使用 C 做一些数值实验的数学家 我想要我的输出 针对不同的参数值将实验写入不同的文件中 MWE 应该做这样的事情 创建一个由 i 索引的文件指针 打开名为 file i 的
  • 如何在oracle中提取或更新xml属性值

    表名称 conn details 我有这个 xml 它存储在 Oracle 的 CLOB 列 conn param 中
  • 从 Windows 服务调用时 System.Diagnostics.Process.Start() 无法启动进程

    我正在尝试从 NET Windows 服务启动外部进程 过去我用过Process Start 采用可执行路径和命令行字符串的重载 这有效 但现在我想启动该过程并让它在特定用户的上下文中运行 所以我称这个版本为Start public sta
  • 更改数据框中的一些数值

    我有一个数据框 其中两个变量 纬度和经度 的值不正确 数据框中的错误值列为 999 00 正确值应分别为 42 68 和 72 47 我想要一种简单的方法来使用 dplyr 替换这些值 但我的尝试 见下文 没有成功 下面提供的错误 df L
  • 使用 MIP SDK 解密加密的 Office 365 电子邮件

    我正在关注论坛主题 Azure 信息保护 如何解密来自 EWS API 的 EML 我有兴趣了解解密加密 Office 365 电子邮件的步骤 您能否评论以下内容 正如您提到的 必须将电子邮件转换为 msg 文件 所以我的问题是 在将电子邮
  • If-Else-If 链和多个 If 哪个更好

    假设我有一个随机数 哪个更有效率 if num 1 else if num 2 else if num 3 else if num 4 else if num 5 else or if num 1 if num 2 if num 3 if
  • 如何删除字符串句子中的空格

    我正在尝试编写一段代码来删除所有前导 尾随和中间的句子空格 但只保留单词之间的一个空格 例如 如果输入是 This is my string 输出应该是 This is my string 到目前为止我已经想出了这个 include
  • python sys.getsizeof方法在不同版本的python上返回不同的大小

    sys getsizeof在不同版本的 python 上返回不同大小的 unicode 字符串 sys getsizeof u Hello World return 96 on Python 2 7 3并返回72 on Python 2 7
  • Laravel Eloquent 模型缓存

    我正在学习 laravel 雄辩拉拉维尔 5 6 我已经使用过数据库查询生成器和缓存 数据库查询生成器的检索和存储 value Cache remember users minutes function return DB table us
  • 将 Windows 窗体 ToolStripMenuItem ShortcutKeys 属性设置为小键盘键不起作用

    We have the ability to define shortcut keys for Windows Forms application menu items That way I can tell a menu item Fil
  • 当sproc使用RETURN @value时可以使用cmd.ExecuteScalar吗

    你能用吗 int blah Convert ToInt32 cmd ExecuteScalar 当存储过程的最后一条语句执行时 RETURN value 我只能让它工作 如果它 选择 值 另外 这给了我一个对象空异常 int blah in
  • 使用现有列名称和值创建新列[重复]

    这个问题在这里已经有答案了 我正在尝试使用数据集中现有的列名称创建一个新列 具体来说 在这个数据集中 一行对应一个呼吸道样本 有 10个病毒检测结果 每个结果都有一个对应的列 值 0 表示该病毒检测呈阴性 值 1 表示该病毒检测呈阳性 数据
  • 如何使用 vue.js 计算 或 上的样式?

    我在用vuejs 样式绑定在计算样式时动态呈现更改 这对于我的 Vue 实例范围内的所有内容都非常有效 但是我如何计算 body 或 html 标签的样式 当您可以绑定 vue 实例时 这曾经是可能的 但 vue 不再允许您这样做 我想动态