iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >RequireJS如何按需加载样式文件
  • 918
分享到

RequireJS如何按需加载样式文件

2024-04-02 19:04:59 918人浏览 泡泡鱼
摘要

小编给大家分享一下Requirejs如何按需加载样式文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!样式模块化的好处Requi

小编给大家分享一下Requirejs如何按需加载样式文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

样式模块化的好处

RequireJS被设计用来加载javascript模块的,可是大家有没有联想到其实样式文件可以进行模块化处理,那么问题来了,RequireJS能不能像加载脚本文件一样来加载样式文件呢?

虽然RequireJS本身没有实现这个功能,但官网推荐了一些常用的插件供我们使用,官网插件插件地址为:Http://requirejs.org/docs/plugins.html,同时在GitHub上也有社区大量贡献的插件:https://github.com/jrburke/requirejs/wiki/Plugins

当然除了引用第三方插件外,我们也可以动手自己写一个类似插件,不过我在这里要推荐一个很不错的样式模块加载器require-CSS,其官网地址为:https://github.com/guybedford/require-css。

那么我们再来谈谈,样式模块话的好处吧,和脚本模块化一样,样式模块化也可以做到按需加载,样式依赖,不过对我来说最大的好处是将脚本的管理放权到前端管理,为什么这么说呢? 以前我们添加样式文件都是通过link标签引入的,而被引入的文件基本上都是jsp、PHP等后台文件,这样对与后台不太熟悉的人来说,如果样式文件发生改变,都要麻烦后台开发人员。但是最懂样式的莫过于前端开发人员了。

require-css的使用介绍

下面我们通过一个简单的例子,来介绍下require-css的用法,首先下载require-css,去到上面给出的官网地址,在页面的右下角点击Download ZIP按钮,下载完成后解压,将css.js拷贝复制到项目中去。

这个简单示例的目录如下所示:

RequireJS如何按需加载样式文件

假设我们的目的是,通过加载util模块时,页面先加载其依赖的样式文件1.css。这个需求我们经常遇到,比如我们使用JqueryUI时,在加载其脚本模块时,在页面我们也会添加上link标签引入其相关的UI样式文件。

首先我们在project.html中引入RequireJS和指定配置文件(main.js)的位置。期代码如下所示:

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title>RequireJS简单示例</title>
</head>
<body>
  <p id="test">如何处理依赖问题</p>
  <script src="scripts/lib/jquery-1.11.0.min.js"></script>
  <script src="scripts/require.js" data-main="scripts/main"></script>
</body>
</html>

我们进入到main.js配置文件。main.js应该是页面的入口文件,在这个入口文件中,指定了入口文件需要加载的模块,同事也设置了RequireJS某些具体参数。其代码如下所示:


require.config({
  baseUrl: "scripts/",
  paths: {
    "util": "helper/util"
  },
  waitSeconds: 15,
  map: {
    '*': {
      'css': 'lib/css'
    }
  },
  shim : {
    'util': ['css!../style/1.css']
  }
});

require(["util"], function(util) {
  // todo
});

其中我们要特别注意map和shim的配置,"map"告诉RequireJS在任何模块之前,都先载入这个模块,这样别的模块依赖于css!../style/1.css这样的模块都知道怎么处理了,shim那时干什么用的呢?这这个示例中,他表示util这个模块在加载之前需要先加载1.css这个样式文件。当然我们也可以在Util模块里直接设置他的依赖,下面将会解释。

下面我们来看看util模块的代码,代码如下所示:

define(function(){
  //alert("Hello RequireJS!!");
  console.log($("#test").text());
});

这个模块很简单,就是通过jQuery获取页面id为test的值。并且在浏览器的控制台输出来。这里你可能感觉有点奇怪。为什么你使用了jQuery但是在依赖数组中且没有设置呢?正确的说,我们应该这样写:

define(['jquery'],function(){
  //alert("Hello RequireJS!!");
  console.log($("#test").text());
});

我这样做的目的是,用RequireJS打包时,不要将jquery打包进去,这样就可以减少文件的大小了。还有一个上面提出的问题,加入我不用shim这个配置时,可以向依赖JQuery一样,将样式文件写到define的依赖数组中去。其代码如下:

define(['css!../style/1.css'],function(){
  //alert("Hello RequireJS!!");
  console.log($("#test").text());
});

不过你应该一眼就能看出来,那种写法比较好吧,我比较推荐,将依赖写到shim配置中去。

一切配置就绪,在浏览器中打开project.html页面,运行结果如图所示:

RequireJS如何按需加载样式文件

以上是“RequireJS如何按需加载样式文件”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网VUE频道!

--结束END--

本文标题: RequireJS如何按需加载样式文件

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • RequireJS如何按需加载样式文件
    小编给大家分享一下RequireJS如何按需加载样式文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!样式模块化的好处Requi...
    99+
    2024-04-02
  • requirejs如何实现按需加载angularjs文件
    小编给大家分享一下requirejs如何实现按需加载angularjs文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!项目的主...
    99+
    2024-04-02
  • vue 组件异步加载方式(按需加载)
    目录组件异步加载(按需加载)1.使用() => import()2.使用resolve => require([’./_account’], re...
    99+
    2024-04-02
  • React-router4如何按需加载
    这篇文章主要介绍了React-router4如何按需加载,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Reac...
    99+
    2024-04-02
  • react如何实现按需加载
    今天小编给大家分享一下react如何实现按需加载的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。react实现按需加载的方法:...
    99+
    2023-07-04
  • vue3如何按需加载第三方组件库详解
    前言 以Element Plus 为例,配置按需加载组件和样式。 环境 vue3.0.5 vite2.3.3 安装 Element Plus yarn add...
    99+
    2024-04-02
  • 如何用Vue代码实现按需加载
    本篇内容主要讲解“如何用Vue代码实现按需加载”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何用Vue代码实现按需加载”吧!概念(懒加载)当打包构建应用时,JavaScript包会变得非常大,...
    99+
    2023-07-04
  • create-react-app使用antd按需加载的样式无效怎么办
    这篇文章将为大家详细讲解有关create-react-app使用antd按需加载的样式无效怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。官网给出的按需加载解决方案,...
    99+
    2024-04-02
  • Vue3如何使用glup打包组件库并实现按需加载
    这篇文章主要介绍“Vue3如何使用glup打包组件库并实现按需加载”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue3如何使用glup打包组件库并实现按需加载”文章能帮助大家解决问题。使用 glu...
    99+
    2023-07-06
  • 如何加载css文件
    这篇文章主要讲解了“如何加载css文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何加载css文件”吧! 加载css文件的方...
    99+
    2024-04-02
  • vite2.x如何实现按需加载ant-design-vue@next组件的方法
    本篇内容介绍了“vite2.x如何实现按需加载ant-design-vue@next组件的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!...
    99+
    2023-06-14
  • Spring如何加载properties文件
    这篇文章主要介绍“Spring如何加载properties文件”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Spring如何加载properties文件”文章能帮助大家解决问题。spring第三方资...
    99+
    2023-07-02
  • redis如何加载rdb文件
    redis加载rdb文件的分析:redis重启后加载,例如AOF关闭或者AOF文件不存在时,加载RDB文件。RDB配置示例:# 时间策略save 900 1save 300 10save 60 10000# 文件名称dbfilename d...
    99+
    2024-04-02
  • 怎么在vue3中按需加载第三方组件库
    这篇文章给大家介绍怎么在vue3中按需加载第三方组件库,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。环境vue3.0.5vite2.3.3安装 Element Plusyarn add elemen...
    99+
    2023-06-15
  • cdn加速下载文件按什么收费
    CDN加速下载文件的收费通常按照以下因素确定:1、流量根据每月的传输流量收费,包括下载和上传流量。2、带宽指定的带宽速度内的数据传输...
    99+
    2023-05-31
    cdn加速下载 cdn
  • 在create-react-app中如何使用less与antd按需加载
    这篇文章将为大家详细讲解有关在create-react-app中如何使用less与antd按需加载,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用antd按需加载使用r...
    99+
    2024-04-02
  • shell如何按照模式split文件
    这篇文章将为大家详细讲解有关shell如何按照模式split文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。按照模式split 文件csplit server...
    99+
    2024-04-02
  • 如何动态加载JavaScript文件
    这篇文章主要介绍如何动态加载JavaScript文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、使用document.write/writeln()方式该种方式可以实现js文件...
    99+
    2024-04-02
  • PHP 文件存储:如何正确加载文件?
    PHP 文件存储是 Web 开发中不可避免的一部分。在 PHP 中,我们使用文件函数来读取和写入文件。但是,如果我们没有正确地加载文件,可能会导致代码运行失败或安全漏洞。本文将介绍如何正确加载文件,以及如何安全地操作文件。 使用绝对路径...
    99+
    2023-09-05
    文件 存储 load
  • 从0搭建Vue3组件库如何使用 glup 打包组件库并实现按需加载
    目录使用 glup 打包组件库并实现按需加载自动按需引入插件删除打包文件使用 gulpgulp 打包样式打包组件使用 glup 打包组件库并实现按需加载 当我们使用 Vite 库模式...
    99+
    2023-03-23
    glup 打包组件库按需加载 vue3 glup 打包 vue打包组件库
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作