• Angular集成Semantic UI


    安装gulp

    mango@mango:~/Documents/Angular12$ sudo npm install -g gulp
    
    

    创建项目

    mango@mango:~/Documents/Angular12$ ng new semanticui-angular-project
    

    安装semantic-ui

    mango@mango:~/Documents/Angular12/semanticui-angular-project$ npm install semantic-ui --save
    
    

    安装的时候报错,发现是node12和gulp4不兼容

    > semantic-ui@2.4.2 install /home/mango/Documents/Angular12/semanticui-angular-project/node_modules/semantic-ui
    > gulp install
    
    fs.js:35
    } = primordials;
        ^
    
    ReferenceError: primordials is not defined
    
    

    安装node版本管理模块

    mango@mango:~/Documents/Angular12/semanticui-angular-project$ sudo npm install n -g
    [sudo] mango 的密码: 
    /usr/local/bin/n -> /usr/local/lib/node_modules/n/bin/n
    + n@7.2.2
    added 1 package from 2 contributors in 2.577s
    
    

    降级安装nodejs 11.15

    mango@mango:~/Documents/Angular12/semanticui-angular-project$ sudo n 11.15.0
      installing : node-v11.15.0
           mkdir : /usr/local/n/versions/node/11.15.0
           fetch : https://nodejs.org/dist/v11.15.0/node-v11.15.0-linux-x64.tar.xz
       installed : v11.15.0 (with npm 6.7.0)
    
    Note: the node command changed location and the old location may be remembered in your current shell.
             old : /usr/bin/node
             new : /usr/local/bin/node
    To reset the command location hash either start a new shell, or execute PATH="$PATH"
    
    

    重新安装semantic-ui

    mango@mango:~/Documents/Angular12/semanticui-angular-project$ npm install semantic-ui --save
    npm WARN deprecated gulp-util@3.0.8: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5
    npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
    npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
    npm WARN deprecated graceful-fs@1.2.3: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
    npm WARN deprecated natives@1.1.6: This module relies on Node.js's internals and will break at some point. Do not use it, and update to graceful-fs@4.x.
    npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
    npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
    
    > semantic-ui@2.4.2 install /home/mango/Documents/Angular12/semanticui-angular-project/node_modules/semantic-ui
    > gulp install
    
    /home/mango/Documents/Angular12/semanticui-angular-project/node_modules/accord/lib/index.js:29
          throw new Error(name + " version " + version + " is not currently supported");
          ^
    
    Error: less version 4.1.1 is not currently supported
    
    

    查看package-lock.json可以看到angular默认的less版本是4.1.1

    mango@mango:~/Documents/Angular12/semanticui-angular-project$ npm install less@3.13.1
    
    

    由于angular和semantic-ui对node、gulp、less都有版本要求,并且存在冲突,所以直接使用全新的本地环境,在项目同一个目录新建一个semantic-ui,并安装semantic-ui

    mango@mango:~/Documents/Angular12$ mkdir semantic-ui
    mango@mango:~/Documents/Angular12$ cd semantic-ui
    mango@mango:~/Documents/Angular12/semantic-ui$ npm install semantic-ui --save
    > semantic-ui@2.4.2 install /home/mango/node_modules/semantic-ui
    > gulp install
    
    [23:03:18] Using gulpfile ~/node_modules/semantic-ui/gulpfile.js
    [23:03:18] Starting 'install'...
    
    [23:03:18] Starting 'run setup'...
    ? Set-up Semantic UI Automatic (Use default locations and all components)
    ? We detected you are using NPM Nice! Is this your project folder? /home/mango No, let me specify
    ? Please enter the absolute path to your project root /home/mango/Documents/Angular12/semanticui-angular-project
    ? Where should we put Semantic UI inside your project? semantic/
    [23:05:13] Finished 'run setup' after 1.92 min
    [23:05:13] Starting 'create install files'...
    
    

    进入semantic目录,并进行build

    mango@mango:~/Documents/Angular12/semantic-ui$ cd semantic/
    mango@mango:~/Documents/Angular12/semantic-ui/semantic$ gulp build
    
    

    将build的css文件和js文件加入到angular.json文件

              "options": {
                "outputPath": "dist/semanticui-angular-project",
                "index": "src/index.html",
                "main": "src/main.ts",
                "polyfills": "src/polyfills.ts",
                "tsConfig": "tsconfig.app.json",
                "inlineStyleLanguage": "less",
                "assets": [
                  "src/favicon.ico",
                  "src/assets"
                ],
                "styles": [
                  "src/styles.less",
                  // "../semantic-ui/semantic/dist/semantic.min.css"
                ],
                "scripts": [
                  // "../semantic-ui/semantic/dist/semantic.min.js"
                ]
              }
    
  • 相关阅读:
    iOS 键盘类型定制归纳
    CocoaPods安装第三方出错:XCode7.3
    NSIntger CGFloat NSNumber
    iOS 关于使用xib创建cell的两种初始化方式
    自定义导航栏--用法一
    CocoaPods的安装[转载]
    pch和info.plist初探
    iOS_XCode7_Launch Image 的初使用
    nginx四层负载及动静分离
    Nginx负载均衡
  • 原文地址:https://www.cnblogs.com/wufengtinghai/p/14826811.html
Copyright © 2020-2023  润新知