快速上手

如何使用

通过npm和下载方式的配置之后,在某个页面可以直接使用组件,无需通过import引入组件。

  1. <template>
  2. <u-action-sheet :list="list" v-model="show"></u-action-sheet>
  3. </template>
  4. <script>
  5. export default {
  6. data() {
  7. return {
  8. list: [{
  9. text: '点赞',
  10. color: 'blue',
  11. fontSize: 28
  12. }, {
  13. text: '分享'
  14. }, {
  15. text: '评论'
  16. }],
  17. show: true
  18. }
  19. }
  20. }
  21. </script>

如何不使用easycom而单独引用某一个组件

某些情况下,您可能不想通过easycom引用组件(虽然我们极力推荐您使用easycom),那么您可以使用import这个常规的引入方式,如下:

  1. <template>
  2. <u-action-sheet :list="list" v-model="show"></u-action-sheet>
  3. </template>
  4. <script>
  5. import uActionSheet from "uView-ui/components/u-action-sheet/u-action-sheet.vue";
  6. export default {
  7. components: {
  8. uActionSheet
  9. },
  10. data() {
  11. return {
  12. list: [{
  13. text: '点赞',
  14. color: 'blue',
  15. fontSize: 28
  16. }, {
  17. text: '分享'
  18. }, {
  19. text: '评论'
  20. }],
  21. show: true
  22. }
  23. }
  24. }
  25. </script>

关于uView组件的esaycom规则可能和其他组件引入名称冲突的问题

uView的组件引入是通过easycom形式的,写在pages.json中,以u-开头,这可能和其他UI组件,或者uni-app件市场的uParse修复版-html富文本加载快速上手 - 图1组件名冲突而报错, 原因是此uParse的组件引用名为u-parse,也是u-开头,即使您在页面中显式地配置了组件引入,但uni-app然认为easycom配置的规则优先级比页面引入的组件规则高。

以下为uParse第三方插件的官方写法:

  1. <template>
  2. <u-parse :content="xxx"></u-parse>
  3. </template>
  4. <script>
  5. import uParse from '@/components/gaoyia-parse/parse.vue'
  6. export default {
  7. components: {
  8. uParse
  9. }
  10. }
  11. </script>

可以看到,上方虽然通过import声明了此组件,最终引用的组件名称为<u-parse>(“u-“开头),但是uni-app然忽视了,而认为uView在pages.json配置的easycom规则的优先级更高,因而去uView的组件库 中查找u-parse,因为找不到而报错,这是不合理的。

解决办法也很简单,给冲突的插件换一个名字即可,比如上面的uParse插件,我们在importcomponents声明的时候换一个名字即可,比如这里让其为字母a开头:

  1. <template>
  2. <a-parse :content="xxx"></a-parse>
  3. </template>
  4. <script>
  5. // 记得同时修改引入的名称,以及components中的名称
  6. import aParse from '@/components/gaoyia-parse/parse.vue'
  7. export default {
  8. components: {
  9. aParse
  10. }
  11. }
  12. </script>