dart系列之:在dart中使用packages

本文介绍如何在Dart项目中使用packages。通过pubspec.yaml文件管理依赖,并使用dart pub get命令下载依赖包。还介绍了如何在代码中使用这些包以及如何进行依赖升级。

简介

java中使用jar包来封装有用的功能,然后将其分发到maven仓库中,供其他人使用。同样的在dart中也有类似的概念叫做packages。packages就是可以用来共享的软件包,可以包含libraries和tools。

你可以在pub.dev网站中查到dart中所有的共享packages的信息。 那么怎么在一个dart项目中使用这些packages呢?

pubspec.yaml

简单点讲,一个dart的package就是包含pubspec.yaml的目录。pubspec.yaml是一个描述文件,用来表明该package的元信息,包括当前package的名字,版本号和依赖信息等。

要想使用pub.dev上的packages,只需要在pubspec.yaml引入对应的依赖即可。

我们举个例子:

name: app2
description: a demo app
version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  image_picker: ^0.6.7+22
  video_player: ^0.10.12+5

这里我们的引入了两个依赖包,分别是image_picker和video_player。

get packages

当我们修改了pubspec.yaml之后,其实对应的package并没有下载到本地来,还需要通过下面的命令来下载对应的packages:

 cd <path-to-my_app>
 dart pub get

dart pub get会根据pubspec.yaml中配置的内容下载对应的包,并放置在系统缓存中。

在Mac或者Linux系统中,这个缓存目录的地址是:~/.pub-cache,在windows中这个目录地址是:%LOCALAPPDATA%\Pub\Cache。

当然,你也可以通过设置PUB_CACHE来更换这个地址。

如果你依赖的包又依赖其他的包的话,其他依赖包也会被下载下来。

当下载完依赖包之后,dart会在 .dart_tool/目录中创建一个 package_config.json文件,用来表示当前项目和系统缓存包的映射关系。

使用packages

万事俱备,只欠东风。现在包也有了,剩下就是使用了。

使用libary可以用关键字import。如果是dart SDK中的包,则以dart:开头:

 import 'dart:html';

如果是第三方包,则以package: 开头:

import 'package:test/test.dart';

引入的libary还可以被重命名:

import 'package:lib1/lib1.dart';
import 'package:lib2/lib2.dart' as lib2;

// Uses Element from lib1.
Element element1 = Element();

// Uses Element from lib2.
lib2.Element element2 = lib2.Element();

还可以使用show和hide引入部分library:

// Import only foo.
import 'package:lib1/lib1.dart' show foo;

// Import all names EXCEPT foo.
import 'package:lib2/lib2.dart' hide foo;

默认情况下,引入的包是初始加载的,如果某些包特别大,或者你想要在使用的时候再进行加载,则可以使用deferred关键字进行延时加载:

import 'package:greetings/hello.dart' deferred as hello;

在使用的时候,需要显示调用loadLibrary() 方法,来加载对应的library:

Future<void> greet() async {
  await hello.loadLibrary();
  hello.printGreeting();
}

升级依赖

在第一次运行dart pub get 之后,dart会创建一个pubspec.lock文件,用来锁定依赖包的版本号,如果是在团队协作中,这个lock文件是特别有用的,它可以保证团队中所有成员使用的都是同一个版本的依赖包。

当你想升级对应的依赖的时候,可以使用dart pub upgrade命令,对依赖包进行升级。

dart pub upgrade会根据最新的可用包来生成最新的lock文件。

当然,你也可以指定升级某个特定的依赖包:

dart pub upgrade image_picker

要想查看最新依赖包的最新版本,可以使用:

dart pub outdated

总结

以上就是dart中packages的使用。

本文已收录于 http://www.flydean.com/09-dart-packages/

最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现!

欢迎关注我的公众号:「程序那些事」,懂技术,更懂你!

Vue2 scss 预编译器默认已由 node-sass 更换为 dart-sass,如果您的代码使用dart-sass 不支持的旧语法,可能存在部分不兼容的问题。 18:18:09.216 解决方案: 18:18:09.216 方案1:调整为 dart-sass 支持的语法,将深度选择器 /deep/ 调整为 ::v-deep,详情:https://uniapp.dcloud.net.cn/tutorial/syntax-css.html#css-preprocessor 18:18:09.216 方案2:如果您希望继续使用node-sass,您可以在 manifest.json 中配置 "sassImplementationName": "node-sass",详情:https://uniapp.dcloud.net.cn/tutorial/syntax-css.html#css-preprocessor 18:18:09.216 18:18:09.216 Module build failed (from ./node_modules/mini-css-extract-plugin/dist/loader.js): 18:18:09.216 ModuleBuildError: Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 18:18:09.217 SassError: expected selector. 18:18:09.217 ╷ 18:18:09.217 2 │ /deep/.u-button--success{ 18:18:09.217 │ ^ 18:18:09.217 ╵ 18:18:09.217 E:\1rock\cr\cr-chart\uni.scss 2:1 @use 18:18:09.217 E:\1rock\cr\cr-chart\App.vue 1:1 root stylesheet 18:18:09.217 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\webpack\lib\NormalModule.js:316:20 18:18:09.217 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\loader-runner\lib\LoaderRunner.js:367:11 18:18:09.217 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\loader-runner\lib\LoaderRunner.js:233:18 18:18:09.217 at context.callback (D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\loader-runner\lib\LoaderRunner.js:111:13) 18:18:09.217 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\@dcloudio\vue-cli-plugin-uni\packages\sass-loader\dist\index.js:75:7 18:18:09.217 at Function.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:96399:16) 18:18:09.217 at render_closure1.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:82305:12) 18:18:09.217 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.217 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.218 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.218 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.218 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.218 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.218 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.218 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:15783:20 18:18:09.218 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.218 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.218 at _awaitOnObject_closure0.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26631:25) 18:18:09.218 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.218 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.218 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.218 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.218 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.218 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.219 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.219 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:21292:20 18:18:09.219 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.219 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.219 at _awaitOnObject_closure0.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26631:25) 18:18:09.219 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.219 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.219 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.219 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.219 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.219 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.219 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.219 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:21327:20 18:18:09.219 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.219 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.219 at _awaitOnObject_closure0.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26631:25) 18:18:09.219 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.219 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.219 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.219 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.220 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.220 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.220 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.220 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:70809:20 18:18:09.220 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.220 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.220 18:18:09.220 Vue2 scss 预编译器默认已由 node-sass 更换为 dart-sass,如果您的代码使用dart-sass 不支持的旧语法,可能存在部分不兼容的问题。 18:18:09.220 解决方案: 18:18:09.220 方案1:调整为 dart-sass 支持的语法,将深度选择器 /deep/ 调整为 ::v-deep,详情:https://uniapp.dcloud.net.cn/tutorial/syntax-css.html#css-preprocessor 18:18:09.220 方案2:如果您希望继续使用node-sass,您可以在 manifest.json 中配置 "sassImplementationName": "node-sass",详情:https://uniapp.dcloud.net.cn/tutorial/syntax-css.html#css-preprocessor 18:18:09.220 18:18:09.220 Module build failed (from ./node_modules/mini-css-extract-plugin/dist/loader.js): 18:18:09.220 ModuleBuildError: Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 18:18:09.220 SassError: expected selector. 18:18:09.220 ╷ 18:18:09.220 2 │ /deep/.u-button--success{ 18:18:09.220 │ ^ 18:18:09.220 ╵ 18:18:09.220 E:\1rock\cr\cr-chart\uni.scss 2:1 @use 18:18:09.220 E:\1rock\cr\cr-chart\node_modules\uview-ui\components\u-button\u-button.vue 1:1 root stylesheet 18:18:09.220 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\webpack\lib\NormalModule.js:316:20 18:18:09.221 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\loader-runner\lib\LoaderRunner.js:367:11 18:18:09.221 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\loader-runner\lib\LoaderRunner.js:233:18 18:18:09.221 at context.callback (D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\loader-runner\lib\LoaderRunner.js:111:13) 18:18:09.221 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\@dcloudio\vue-cli-plugin-uni\packages\sass-loader\dist\index.js:75:7 18:18:09.221 at Function.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:96399:16) 18:18:09.221 at render_closure1.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:82305:12) 18:18:09.221 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.221 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.221 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.221 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.221 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.221 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.221 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.221 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:15783:20 18:18:09.221 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.221 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.221 at _awaitOnObject_closure0.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26631:25) 18:18:09.221 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.221 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.221 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.221 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.221 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.222 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.222 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.222 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:21292:20 18:18:09.222 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.222 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.222 at _awaitOnObject_closure0.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26631:25) 18:18:09.222 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.222 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.222 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.222 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.222 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.222 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.222 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.222 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:21327:20 18:18:09.222 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.222 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.222 at _awaitOnObject_closure0.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26631:25) 18:18:09.222 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.222 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.222 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.223 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.223 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.223 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.223 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.223 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:70809:20 18:18:09.223 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.223 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.223 18:18:09.223 Vue2 scss 预编译器默认已由 node-sass 更换为 dart-sass,如果您的代码使用dart-sass 不支持的旧语法,可能存在部分不兼容的问题。 18:18:09.223 解决方案: 18:18:09.223 方案1:调整为 dart-sass 支持的语法,将深度选择器 /deep/ 调整为 ::v-deep,详情:https://uniapp.dcloud.net.cn/tutorial/syntax-css.html#css-preprocessor 18:18:09.223 方案2:如果您希望继续使用node-sass,您可以在 manifest.json 中配置 "sassImplementationName": "node-sass",详情:https://uniapp.dcloud.net.cn/tutorial/syntax-css.html#css-preprocessor 18:18:09.223 18:18:09.223 Module build failed (from ./node_modules/mini-css-extract-plugin/dist/loader.js): 18:18:09.223 ModuleBuildError: Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 18:18:09.223 SassError: expected selector. 18:18:09.223 ╷ 18:18:09.223 2 │ /deep/.u-button--success{ 18:18:09.223 │ ^ 18:18:09.223 ╵ 18:18:09.223 E:\1rock\cr\cr-chart\uni.scss 2:1 @use 18:18:09.223 E:\1rock\cr\cr-chart\node_modules\uview-ui\components\u-checkbox-group\u-checkbox-group.vue 1:1 root stylesheet 18:18:09.223 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\webpack\lib\NormalModule.js:316:20 18:18:09.223 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\loader-runner\lib\LoaderRunner.js:367:11 18:18:09.223 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\loader-runner\lib\LoaderRunner.js:233:18 18:18:09.223 at context.callback (D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\loader-runner\lib\LoaderRunner.js:111:13) 18:18:09.224 at D:\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\@dcloudio\vue-cli-plugin-uni\packages\sass-loader\dist\index.js:75:7 18:18:09.224 at Function.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:96399:16) 18:18:09.224 at render_closure1.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:82305:12) 18:18:09.224 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.224 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.224 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.224 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.224 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.224 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.224 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.224 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:15783:20 18:18:09.224 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.224 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.224 at _awaitOnObject_closure0.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26631:25) 18:18:09.224 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.224 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.224 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.224 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.224 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.224 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.224 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.225 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:21292:20 18:18:09.225 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.225 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.225 at _awaitOnObject_closure0.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26631:25) 18:18:09.225 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.225 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.225 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.225 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.225 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.225 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.225 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.225 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:21327:20 18:18:09.225 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.225 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.225 at _awaitOnObject_closure0.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26631:25) 18:18:09.225 at _RootZone.runBinary$3$3 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:28284:18) 18:18:09.225 at _FutureListener.handleError$1 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26806:21) 18:18:09.225 at _Future__propagateToListeners_handleError.call$0 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:27113:49) 18:18:09.225 at Object._Future__propagateToListeners (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:12137:77) 18:18:09.225 at _Future._completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26959:9) 18:18:09.226 at _AsyncAwaitCompleter.completeError$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26618:12) 18:18:09.226 at Object._asyncRethrow (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11940:17) 18:18:09.226 at D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:70809:20 18:18:09.226 at _wrapJsFunctionForAsync_closure.$protected (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:11965:15) 18:18:09.226 at _wrapJsFunctionForAsync_closure.call$2 (D:\Program Files\HBuilderX\plugins\compile-dart-sass\node_modules\sass\sass.dart.js:26637:12) 18:18:09.226 18:18:09.226 Vue2 scss 预编译器默认已由 node-sass 更换为 dart-sass,如果您的代码使用dart-sass 不支持的旧语法,可能存在部分不兼容的问题。 18:18:09.226 解决方案: 18:18:09.226 方案1:调整为 dart-sass 支持的语法,将深度选择器 /deep/ 调整为 ::v-deep,详情:https://uniapp.dcloud.net.cn/tutorial/syntax-css.html#css-preprocessor 18:18:09.226 方案2:如果您希望继续使用node-sass,您可以在 manifest.json 中配置 "sassImplementationName": "node-sass",详情:https://uniapp.dcloud.net.cn/tutorial/syntax-css.html#css-preprocessor 18:18:09.226 18:18:09.226 Module build failed (from ./node_modules/mini-css-extract-plugin/dist/loader.js): 18:18:09.226 ModuleBuildError: Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js):
最新发布
07-10
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

flydean程序那些事

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值