如何引入外部字体库iconfont的图标,具体如下
直接使用阿里巴巴的网络路径
选择iconfont图标
官网:阿里巴巴矢量字体库
步骤:阿里巴巴字体库使用方法
全局引入appwxss
12345678910111213141516171819202122232425262728293031323334@font-face { font-family: 'iconfont'; / project id 518032 / src: url('//atalicdncom/t/font_518032_t2q88z3jok8iwwmieot'); src: url('//atalicdncom/t/font_518032_t2q88z3jok8iwwmieot#iefix') format('embedded-opentype'), url('//atalicdncom/t/font_518032_t2q88z3jok8iwwmiwoff') format('woff'), url('//atalicdncom/t/font_518032_t2q88z3jok8iwwmittf') format('truetype'), url('//atalicdncom/t/font_518032_t2q88z3jok8iwwmisvg#iconfont') format('svg');}iconfont { font-family:"iconfont" !important; font-size:60rpx; font-style:normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}/本项目使用的18个图标 /icon-zhiding:before{content: '\e739';}icon-zuojiantou:before{content: '\e736';}icon-youjiantou:before{content: '\e735';}icon-shangjiantou:before{content: '\e734';}icon-xiajiantou1:before{content: '\e733';}icon-xiajiantou:before{content: '\e6cc';}icon-gengduotianchong:before{content: '\e67f';}icon-erweima:before{content: '\e65f';}icon-fenleiorguangchangorqita:before{content: '\e64f';}icon-dibiao:before{content: '\e64d';}icon-bangzhu:before{content: '\e64a';}icon-xinfeng:before{content: '\e640';}icon-duihuaxinxi:before{content: '\e639';}icon-sousuo:before{content: '\e62f';}icon-shouye:before{content: '\e62d';}icon-shezhi:before{content: '\e62a';}icon-shanchu:before{content: '\e629';}icon-dianhua:before{content: '\e61b';}使用图标
123456789101112131415161718192021222324<view> <icon class="iconfont icon-zhiding"></icon> <icon class="iconfont icon-zuojiantou"></icon> <icon class="iconfont icon-youjiantou"></icon> <icon class="iconfont icon-shangjiantou"></icon> <icon class="iconfont icon-xiajiantou1"></icon> <icon class="iconfont icon-xiajiantou"></icon></view><view> <icon class="iconfont icon-gengduotianchong"></icon> <icon class="iconfont icon-erweima"></icon> <icon class="iconfont icon-fenleiorguangchangorqita"></icon> <icon class="iconfont icon-dibiao"></icon> <icon class="iconfont icon-bangzhu"></icon> <icon class="iconfont icon-xinfeng"></icon></view><view> <icon class="iconfont icon-duihuaxinxi"></icon> <icon class="iconfont icon-sousuo"></icon> <icon class="iconfont icon-shouye"></icon> <icon class="iconfont icon-shezhi"></icon> <icon class="iconfont icon-shanchu"></icon> <icon class="iconfont icon-dianhua"></icon></view>效果图
注意:此处实现采用的是无APPID的开发模式,实际应用应该在微信小程序管理平台的开发设置中配置合法域名。
下载到本地
步骤
字体文件转化成base64格式
解压压缩包 —- 找到ttf格式文件 —- 上传到平台转化为base64格式 —- 下载压缩包 —- 将css文件名改为wxss —- 放入项目文件夹 —- 用@import全局引入 —- 使用
使用—-引入及全局定义
123456789101112131415161718192021222324@import "src/css/iconwxss";iconfont { font-family: "iconfont"; font-size:60rpx;}/本项目使用的18个图标 /icon-zhiding:before{content: '\e739';}icon-zuojiantou:before{content: '\e736';}icon-youjiantou:before{content: '\e735';}icon-shangjiantou:before{content: '\e734';}icon-xiajiantou1:before{content: '\e733';}icon-xiajiantou:before{content: '\e6cc';}icon-gengduotianchong:before{content: '\e67f';}icon-erweima:before{content: '\e65f';}icon-fenleiorguangchangorqita:before{content: '\e64f';}icon-dibiao:before{content: '\e64d';}icon-bangzhu:before{content: '\e64a';}icon-xinfeng:before{content: '\e640';}icon-duihuaxinxi:before{content: '\e639';}icon-sousuo:before{content: '\e62f';}icon-shouye:before{content: '\e62d';}icon-shezhi:before{content: '\e62a';}icon-shanchu:before{content: '\e629';}icon-dianhua:before{content: '\e61b';}开发使用
123456789101112131415161718192021222324<view> <icon class="iconfont icon-zhiding"></icon> <icon class="iconfont icon-zuojiantou"></icon> <icon class="iconfont icon-youjiantou"></icon> <icon class="iconfont icon-shangjiantou"></icon> <icon class="iconfont icon-xiajiantou1"></icon> <icon class="iconfont icon-xiajiantou"></icon></view><view> <icon class="iconfont icon-gengduotianchong"></icon> <icon class="iconfont icon-erweima"></icon> <icon class="iconfont icon-fenleiorguangchangorqita"></icon> <icon class="iconfont icon-dibiao"></icon> <icon class="iconfont icon-bangzhu"></icon> <icon class="iconfont icon-xinfeng"></icon></view><view> <icon class="iconfont icon-duihuaxinxi"></icon> <icon class="iconfont icon-sousuo"></icon> <icon class="iconfont icon-shouye"></icon> <icon class="iconfont icon-shezhi"></icon> <icon class="iconfont icon-shanchu"></icon> <icon class="iconfont icon-dianhua"></icon></view>效果图
一、定义模板
1、新建一个template文件夹用来管理项目中所有的模板;
2、新建一个courseListwxml文件来定义模板;
3、使用name属性,作为模板的名字。然后在内定义代码片段。
注意:
a可以看到一个wxml文件中可以定义多个模板,只需要通过name来区分;
b模板中的数据都是展开之后的属性。
<template name="courseLeft">
<navigator url="/play/playcourseUuid={{courseUuid}}&isCompany={{isCompany}}">
<view class="item mr26">
<image src="{{imagePath}}" mode="aspectFill"></image>
<view class="course-title">
<text class="title">{{courseName}}</text>
<text class="author">- {{teacherName}}</text>
</view>
<view class="course-info clearfix">
<view class="fl"><text class="play">{{playCount}}</text></view>
<view class="fr"><text class="grade">{{score}}</text></view>
</view>
<view wx:if="{{studyProgress}}" class="tip-completed">{{studyProgress}}</view>
</view>
</navigator></template><template name="courseRight">
<navigator url="/play/playcourseUuid={{courseUuid}}&isCompany={{isCompany}}">
<view class="item">
<image src="{{imagePath}}" mode="aspectFill"></image>
<view class="course-title">
<text class="title">{{courseName}}</text>
<text class="author">- {{teacherName}}</text>
</view>
<view class="course-info clearfix">
<text class="play fl">{{playCount}}</text>
<text class="grade fr">{{score}}</text>
</view>
<view wx:if="{{studyProgress}}" class="tip-completed">{{studyProgress}}</view>
</view>
</navigator></template>
二、使用模板
1、使用 is 属性,声明需要的使用的模板
<import src="//templates/courseListwxml"/>
2、将模板所需要的 data 传入,一般我们都会使用列表渲染。
<block wx:for="{{courseList}}">
<template is="{{index%2 === 0 'courseLeft' : 'courseRight'}}" data="{{item}}"></template></block>
注意:
a可以通过表达式来确定使用哪个模板is="{{index%2 === 0 'courseLeft' : 'courseRight'}}"
或者通过wx:if来确定。index是数组当前项的下标。
<template wx:if="{{index%2 === 0}}" is="courseLeft" data="{{item}}"></template>
<template wx:else is="courseRight" data="{{item}}"></template>
b data 是要模板渲染的数据,data="{{item}}" 写法是ES6的写法,item是wx:for当前项, 是展开运算符,在模板中不需要再{{itemcourseName}} 而是直接{{courseName}} 。
三、模板样式
1、在新建模板的时候同时新建一个courseListwxss 的文件,与CSS同样的写法控制样式。
2、在需要使用模板的页面 wxss文件中import进来;或者直接在appwxss中引入,这样只需要一次引入,其他文件就不用引入了。
@import url("/template/courseListwxss");
在引入之前,需要安装nodejs作为运行环境,具体 *** 作网上可以搜得到!
以引入vant为例:
输入npm init,下面的选择都用回车即可
npm i weui-miniprogram -S --production
@import '/miniprogram_npm/weui-miniprogram/weui-wxss/dist/style/weuiwxss';
"usingComponents": {
"mp-toptips": "//miniprogram_npm/weui-miniprogram/toptips/toptips"
}
<mp-toptips msg="{{tips}}" type="success" show="{{tips}}"></mp-toptips>
Minax是一个专为小程序开发的状态管理库,它采用集中式存储管理应用的所有组件的状态,
并能够配置是否与缓存做绑定,使用方式类似与Vuex。通常可以用来解决多个试图共享同一
状态或者多个试图需要变更同一状态的场景。
针对221以下基础库版本,请将本库的dist目录复制到您的项目中,然后适用require或者import的方式引用即
或者
由于小程序的文件夹默认不采用npm的形式,所以第一步需要将小程序项目初始化成npm项目
然后根据你的包管理工具使用
或者
安装成功后,点击开发者工具中的菜单栏:工具 --> 构建 npm
勾选“使用 npm 模块”选项:
构建完成后即可使用 npm 包,js 中引入 npm 包:
Minax库的核心就是store(仓库)。“store”基本上就是一个容器,它包含着你的应用中大部分的状态 (state以及action)。
Minax 和单纯的全局对象有以下两点不同:
Minax 的状态存储是基于发布订阅模式的,当页面或组件从 中设置了 mapState 时,相当于向store订阅了该状态,若 store 中的状态发生变化,那么相应的组件、页面也会相应地得到高效更新。
你不能直接改变 store 中的状态,改变 store 中的状态的唯一途径就是显式地提交发布 (commit),这样使得我们可以方便地跟踪每一个状态的变化。
我们建议在项目建一个store/indexjs文件,一个简单的store编写如下:
现在,你可以通过 storestate 来获取状态对象,以及通过 storecommit 方法触发状态变更:
在项目的appjs中,将store引入
在Page、Component、Behavior中配置mapState属性,其对应的值为一个字符串或者字符串数组
mapState: ['cartCount', 'mark'],
或者
mapState: 'cartCount',经mapState处理过的属性等效于设置月data中,您可以通过thisdatacartCount获取,也可以通过this$storestatecartCount获取
在wxml中,直接绑定改值既可
看到这里,你应该已经基本掌握本库的使用了
state是Minax的全部状态源,我们通过在state中设置的key来绑定状态,其有两个特性:
Minax支持于缓存绑定的模式,这一点你只需要知道即可,因为你无需 *** 作缓存,这一切都由store帮你做好,初始化时会自动读取,更新时会自动写入,而你要做的知识在bindStorageMode等于true时,配置state的持久化属性即可
action通常用于处理异步事物(你实在要同步使用我也没办法)
使用时
好啦,暂时先到这里,你可以愉快的coding啦
备注
在使用到 SystemInfoUtil 的地方需要 import
import SystemInfoUtil from '工具类文件路径' // 小程序 js 中只能用相对路径好像,类似 ///utils/utilsjs
具体代码如下:
import javaxswing;
import javaawtevent;
import javaawt;
public class Calculator extends JFrame implements ActionListener {
private JFrame jf;
private JButton[] allButtons;
private JButton clearButton;
private JTextField jtf;
public Calculator() {
//对图形组件实例化
jf=new JFrame("任静的计算器10:JAVA版");
jfaddWindowListener(new WindowAdapter(){
public void windowClosing(){
Systemexit(0);
}
});
allButtons=new JButton[16];
clearButton=new JButton("清除");
jtf=new JTextField(25);
jtfsetEditable(false);
String str="123+456-7890=/";
for(int i=0;i<allButtonslength;i++){
allButtons[i]=new JButton(strsubstring(i,i+1));
}
}
public void init(){
//完成布局
jfsetLayout(new BorderLayout());
JPanel northPanel=new JPanel();
JPanel centerPanel=new JPanel();
JPanel southPanel=new JPanel();
northPanelsetLayout(new FlowLayout());
centerPanelsetLayout(new GridLayout(4,4));
southPanelsetLayout(new FlowLayout());
northPaneladd(jtf);
for(int i=0;i<16;i++){
centerPaneladd(allButtons[i]);
}
southPaneladd(clearButton);
jfadd(northPanel,BorderLayoutNORTH);
jfadd(centerPanel,BorderLayoutCENTER);
jfadd(southPanel,BorderLayoutSOUTH);
addEventHandler();
}
//添加事件监听
public void addEventHandler(){
jtfaddActionListener(this);
for(int i=0;i<allButtonslength;i++){
allButtons[i]addActionListener(this);
}
clearButtonaddActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
CalculatorthisjtfsetText("");
}
});
}
//事件处理
public void actionPerformed(ActionEvent e) {
//在这里完成事件处理 使计算器可以运行
String action=egetActionCommand();
if(action=="+"||action=="-"||action==""||action=="/"){
}
}
public void setFontAndColor(){
Font f=new Font("宋体",FontBOLD,24);
jtfsetFont(f);
jtfsetBackground(new Color(0x8f,0xa0,0xfb));
for(int i=0;i<16;i++){
allButtons[i]setFont(f);
allButtons[i]setForeground(ColorRED);
}
}
public void showMe(){
init();
setFontAndColor();
jfpack();
jfsetVisible(true);
jfsetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
}
public static void main(String[] args){
new Calculator()showMe();
}
}
首先点击eclipse左上角的File,打开找到Import,点击Improt,d出一个窗口,找到Android,打开,选中Existing android Code Into Workspace,然后点击下一步,又d出一个窗口,点击最上面的Browse,选择要导入的demo,然后点击Finish就可以了。
以上就是关于微信小程序 如何引入外部字体库iconfont的全部的内容,包括:微信小程序 如何引入外部字体库iconfont的、如何在小程序中使用template、微信小程序系列——拓展组件库weui的npm引入等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)